Bir TextView ile aynı renkleri vermek istediğim özel bir bileşenim var. Yani, onun renkleri kopyalamak istemiyorum, android üzerinde böyle bir kavram varsa, varsayılan arka plan ve ön plan renkleri almak istiyorum.Android'de varsayılan renkler nasıl alınır?
[Düzenle]
aşağıdaki benim TextView metin rengi elde görünüyor. Ama sadece şans mı? Varsayılan bir TextView'un android.R.attr.textColorSecondary
kullanacağı sezgisel değil mi? Ve neden resolveAttribute
, rengi doğrudan döndürmez?
TypedValue tv = new TypedValue();
getContext().getTheme().resolveAttribute(android.R.attr.textColorSecondary, tv, true);
Color holyColor = getResources().getColor(tv.resourceId);
[Düzenle]
Ben android.git.kernel.org de TextView kaynak kodunu buldum ama ben kendi kodunda kullanmak gerektiğini sanmıyorum com.android.internal.R
için referrences bir sürü içerir gibiydi. Şu anda TextView
'un android.R.attr.textColorSecondary
'u kullandığını gösteren bir çeşit kanıt arıyorum. TextView
android.R.attr.textAppearanceSmall
kullandığı
[Düzenle]
ben styles.xml yılında, developer.android.com delillerin çeşit bulundu.textAppearanceSmall
, "ikincil metin rengi" olarak varsayılan olarak belgelenmiştir.
Sanırım her şeyden önce şanslıydım, ama hala bu küçük kod parçasını beğenmiyorum.
Gözleminiz de şu belgede desteklenmektedir: [http://developer.android.com/guide/topics/resources/accessing-resources.html#ReferencesToThemeAttributes](http://developer.android.com/ guide/topics/resources/accessing-resources.html # ReferencesToThemeAttributes "Referans stil özellikleri") – fr1550n