saya sudah
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid
android:color="#FFFF00" />
<padding android:left="7dp"
android:top="7dp"
android:right="7dp"
android:bottom="7dp" />
</shape>
<TextView
android:background="@drawable/test"
android:layout_height="45dp"
android:layout_width="100dp"
android:text="Moderate"
/>
Jadi sekarang saya ingin bentuk ini berubah warna berdasarkan informasi yang saya dapatkan dari panggilan layanan web. Jadi bisa jadi mungkin kuning atau hijau atau merah atau apapun tergantung pada warna yang saya terima dari panggilan layanan web.
Bagaimana cara mengubah warna bentuk? Berdasarkan informasi ini?
View.getBackground()
mengembalikanGradientDrawable
dan bukanShapeDrawable
penyebab aplikasi mogok pada waktu proses, karena transmisi yang tidak valid saat mencoba mendapatkan referensi dan menyetel warna secara terprogram. [Dok Android Shape] ( developer.android.com/guide/topics/resources/… ) menyatakan: JENIS DATA SUMBER DAYA SELESAI: Penunjuk sumber daya keGradientDrawable
.