Saya perlu membuat bentuk android sehingga hanya bagian bawah yang memiliki goresan (garis putus-putus). Ketika saya mencoba yang berikut ini, goresan itu membagi dua bentuk tepat melalui tengah. Adakah yang tahu bagaimana melakukannya dengan benar? goresan harus menjadi garis bawah / perbatasan. Saya menggunakan bentuk sebagai latar belakang TextView. Tolong, lupakan mengapa saya membutuhkannya.
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item>
<shape android:shape="rectangle" >
<solid android:color="#1bd4f6" />
</shape>
</item>
<item>
<shape android:shape="line" >
<padding android:bottom="1dp" />
<stroke
android:dashGap="10px"
android:dashWidth="10px"
android:width="1dp"
android:color="#ababb2" />
</shape>
</item>
</layer-list>
android
android-drawable
android-styles
layer-list
Cote Mounyo
sumber
sumber
Jawaban:
Ini semacam peretasan, tetapi saya pikir ini mungkin cara terbaik untuk melakukannya. Garis putus-putus akan selalu berada di bawah, berapa pun tingginya.
Penjelasan:
Bentuk kedua adalah persegi panjang transparan dengan garis putus-putus. Kunci untuk membuat batas hanya muncul di sepanjang bagian bawah terletak di margin negatif mengatur sisi lainnya. Margin negatif ini "mendorong" garis putus-putus di luar area yang digambar di sisi tersebut, hanya menyisakan garis di sepanjang bagian bawah. Satu potensi efek samping (yang belum saya coba) adalah, untuk tampilan yang menggambar di luar batasnya sendiri, batas margin negatif mungkin menjadi terlihat.
sumber
Ini triknya ...
sumber
sumber
Jawaban ini untuk pencari google yang ingin menunjukkan batas bawah bertitik
EditText
seperti di siniBuat folder
dotted.xml
di dalamdrawable
dan tempel iniKemudian cukup atur
android:background
atribut yangdotted.xml
baru saja kita buat. AndaEditText
terlihat seperti ini.sumber
Saya merasa ini mudah, tanpa semua bantalan atau bangau negatif ini.
sumber
<item android:drawable="@color/main_bg_color"/>
Coba kode drawable xml berikutnya:
sumber
Saya pikir Anda tidak perlu menggunakan bentuk jika saya mengerti Anda.
Jika Anda melihat seperti yang ditunjukkan pada gambar berikut, gunakan tata letak berikut.
EDIT
bermain dengan properti ini, Anda akan mendapatkan hasil
coba seperti ini
sumber
Solusi sederhana:
Buat file drawable sebagai edittext_stroke.xml di folder drawable . Tambahkan kode di bawah ini:
Di file tata letak, tambahkan drawable ke edittext sebagai
sumber
Biasanya untuk tugas serupa - Saya membuat daftar lapisan yang dapat digambar seperti ini:
Idenya adalah pertama-tama Anda menggambar persegi panjang dengan underlineColor dan di atasnya Anda menggambar persegi panjang lain dengan buttonColor sebenarnya tetapi menerapkan bottomPadding. Itu selalu berhasil.
Tetapi ketika saya perlu memiliki buttonColor agar transparan, saya tidak dapat menggunakan drawable di atas. Saya menemukan satu solusi lagi
(seperti yang Anda lihat di sini mainButtonColor transparan dan white_box hanyalah persegi panjang sederhana yang dapat digambar dengan Solid putih)
sumber
gunakan xml ini ubah warnanya dengan pilihan Anda.
Dalam Kasus jika Anda ingin secara terprogram
sebut metode ini seperti
sumber
Ini bekerja paling baik untuk saya:
Menunjukkan garis di bagian bawah saja. Anda dapat dengan mudah mengubah dengan lebar guratan ke ukuran yang Anda suka dan juga memperbarui bagian atas, kiri, kanan yang sesuai.
sumber
Cara termudah untuk melakukannya adalah meletakkan setelah tampilan di mana Anda ingin batas bawah
sumber
itu benar-benar Edittext transparan dengan latar belakang transparan.
sumber
Solusi sederhana :
Dan akhirnya kami memiliki sesuatu seperti itu :)
sumber