Saya memiliki beberapa masalah dalam menemukan dokumentasi definisi bentuk dalam XML untuk Android. Saya ingin mendefinisikan lingkaran sederhana yang diisi dengan warna solid dalam File XML untuk memasukkannya ke dalam file layout saya.
Sayangnya Dokumentasi di android.com tidak mencakup atribut XML dari kelas Shape. Saya pikir saya harus menggunakan ArcShape untuk menggambar lingkaran tetapi tidak ada penjelasan tentang cara mengatur ukuran, warna, atau sudut yang diperlukan untuk membuat lingkaran keluar dari Arc.
android
android-drawable
shapes
Janusz
sumber
sumber
android:shape
elemen - Sumber daya yang dapat digambar .Jawaban:
Ini adalah lingkaran sederhana yang dapat digambar di Android.
sumber
dp
dan itu terdistorsi menjadi bentuk oval. Bagi saya, menggunakanpt
bukan memperbaikinya.size
di dalamshape
jika nanti Anda menentukan ukuran persegi untuk tampilan.Jadikan ini sebagai latar belakang tampilan Anda
Untuk penggunaan lingkaran padat:
Padat dengan stroke:
Catatan : Untuk membuat
oval
bentuk muncul sebagai lingkaran, dalam contoh ini, baik tampilan Anda bahwa Anda menggunakan bentuk ini sebagai latar belakangnya harus persegi atau Anda harus mengaturheight
danwidth
properti tag bentuk ke nilai yang sama.sumber
yourView.getBackground()
dan mengatur warna secara manual. Anda perlu melemparkannya ke jenis yang tepat sepertiShapeDrawable
. Ada pertanyaan terkait pada SO tentang ini.Kode untuk lingkaran sederhana
sumber
Lihat di sampel Android SDK. Ada beberapa contoh dalam proyek ApiDemos:
/ ApiDemos / res / drawable /
Ini akan terlihat seperti ini untuk lingkaran dengan isian gradien:
sumber
Anda dapat menggunakan VectorDrawable seperti di bawah ini:
Xml di atas diterjemahkan sebagai:
sumber
<group android:translateX="-10" android:translateY="15"><path ...
sumber
<corners />
dilakukan di oval (yang menurut saya tidak memiliki sudut)?Berikut adalah circle_background.xml sederhana untuk pra-materi:
Anda dapat menggunakan dengan atribut
'android:background="@drawable/circle_background"
dalam definisi tata letak tombol Andasumber
Jika Anda ingin lingkaran seperti ini
Coba gunakan kode di bawah ini:
sumber
sumber
res / drawble / circle_shape.xml
sumber
Anda dapat mencoba ini -
Anda juga dapat menyesuaikan jari-jari lingkaran dengan menyesuaikan
android:thickness
.sumber
Saya tidak bisa menggambar lingkaran di dalam ConstraintLayout saya karena suatu alasan, saya tidak bisa menggunakan jawaban di atas.
Apa yang berhasil dengan sempurna adalah TextView sederhana dengan teks yang keluar, ketika Anda menekan "Alt + 7":
sumber
Anda dapat mencoba menggunakan ini
dan Anda tidak perlu repot dengan aspek rasio lebar dan tinggi jika Anda menggunakan ini untuk tampilan teks
sumber
sumber
sumber
Gunakan saja
sumber