Saya bertanya-tanya bagaimana cara menambahkan bayangan pada teks di android?
Saya memiliki kode berikut yang diterapkan pada bitmap dan saya ingin dibayangi ...
paint.setColor(Color.BLACK);
paint.setTextSize(55);
paint.setFakeBoldText(false);
paint.setShadowLayer(1, 0, 0, Color.BLACK); //This only shadows my whole view...
Jawaban:
Anda harus dapat menambahkan style, seperti ini (diambil dari kode sumber untuk Ringdroid):
Dan di tata letak Anda, gunakan gaya seperti ini:
Sunting: kode sumber dapat dilihat di sini: https://github.com/google/ringdroid
Sunting2: Untuk mengatur gaya ini secara terprogram, Anda akan melakukan sesuatu seperti ini (dimodifikasi dari contoh ini untuk mencocokkan sumber daya ringdroid dari atas)
Tanda tangan untuk
setTextAppearance
adalahsumber
Anda dapat melakukannya dalam kode dan XML. Hanya 4 hal dasar yang harus ditetapkan.
misalnya
Ini menggambar bayangan yang menonjol di sisi kiri bawah teks. Dalam kode, Anda dapat menambahkan sesuatu seperti ini;
sumber
Dalam kode tata letak XML di atas, textview1 diberikan dengan efek Shadow di tata letak. di bawah ini adalah item konfigurasi
android: shadowDx - menentukan offset sumbu-X bayangan. Anda bisa memberikan nilai - / +, di mana -Dx menggambar bayangan di sebelah kiri teks dan + Dx di sebelah kanan
android: shadowDy - ini menentukan offset sumbu-Y bayangan. -Dy Menentukan bayangan di atas teks dan + Dy menentukan di bawah teks.
android: shadowRadius - menentukan seberapa banyak bayangan harus dikaburkan di tepinya. Berikan nilai kecil jika bayangan harus menonjol. android: shadowColor - menentukan warna bayangan
Efek Bayangan pada Android TextView secara pragmatis
Gunakan cuplikan kode di bawah ini untuk mendapatkan efek bayangan pada TextView kedua secara pragmatis.
Output:
sumber
Jika Anda ingin mencapai bayangan seperti yang dilakukan Android di Peluncur, kami mengelola nilai-nilai ini. Mereka berguna jika Anda ingin membuat TextViews yang akan muncul sebagai Widget, tanpa latar belakang.
sumber
Gambar 2 teks: satu abu-abu (itu akan menjadi bayangan) dan di atasnya gambarkan teks kedua (y koordinat 1px lebih dari bayangan teks).
sumber
lalu gunakan sebagai
sumber