Android XML dosyasında belirtilen niteliklerden biri olarak bir renk alan özel bir sınıf oluşturmak istiyorum. Bununla birlikte, bir renk bir kaynak olabilir veya bir dizi doğrudan renk spesifikasyonundan biri olabilir (örneğin bir hex değeri). Rengi temsil etmek için AttributeSet
'u kullanmak için basit bir tercih edilen yöntem var mıdır, çünkü bir rengi temsil eden bir tamsayı bir kaynak değerine veya bir ARGB değerine mi işaret edebilir?Bir AttributeSet'ten nasıl güvenilir bir renk alabilirim?
7
A
cevap
22
Diyelim ki bu gibi özel renk özelliğini tanımladık diyelim:
public ColorView(Context context, AttributeSet attrs) {
super(context, attrs);
TypedArray a = context.obtainStyledAttributes(attrs,R.styleable.color_view);
try {
int color = a.getColor(R.styleable.color_view_my_color, 0);
setBackgroundColor(color);
} finally {
a.recycle();
}
}
Değilsin: En bakış kurucusundaki Sonra
<declare-styleable name="color_view">
<attr name="my_color" format="color" />
</declare-styleable>
, böyle bir renk alabilir Aslında, renk özniteliğinin nasıl doldurulduğu konusunda endişelenmeliyiz, ya bu gibi
ya da bu gibi:
<com.test.ColorView
android:layout_width="match_parent"
android:layout_height="match_parent"
app:my_color="@color/red"
/>
getColor
yöntemi, herhangi bir durumda, bir renk değerini döndürür.
İlgili konular
- 1. Görüntüyü yüklemeden .NET'te görüntü boyutlarını nasıl güvenilir bir şekilde alabilirim?
- 2. Faaliyet alanımdaki bir renk kaynağının değerini nasıl alabilirim
- 3. Bir konsol uygulamasında güvenilir zamanlayıcı
- 4. Android Güvenilir bir sunucuya lisans aktarımı
- 5. Emacs vc-diff'de nasıl daha fazla renk alabilirim?
- 6. Bir ContentPresenter'ın Çocuklarını nasıl alabilirim?
- 7. UIImage'ı bir CGContextRef'den nasıl alabilirim?
- 8. Bir div metnini nasıl alabilirim?
- 9. XDocument'den nasıl bir NameTable alabilirim?
- 10. Bir URL başlığı nasıl alabilirim
- 11. Bir AlertDialog'dan sonuçları nasıl alabilirim?
- 12. Kaynak uygulamayı bir Apple Event'den nasıl alabilirim?
- 13. Bir anahtarı bir SSL sertifikasından nasıl alabilirim?
- 14. ASP.Net Başka bir güvenilir ormandaki kullanıcıları doğrulayın
- 15. Bir web sayfasında belirtilen herhangi bir pikselin rengini nasıl alabilirim?
- 16. Bir TextView'ın renk bölümünü nasıl değiştirebilirim?
- 17. ncurses'da nasıl parlak bir renk elde edilir?
- 18. Bu örneğe nasıl bir renk çubuğu eklenir?
- 19. İtext'de özel bir renk nasıl ayarlanır?
- 20. Üç.js'de bir .obj modeline nasıl renk ekleyebilirim?
- 21. CreateJS biçimimde rasgele bir renk nasıl alınır?
- 22. C# içinde parçaları kullanarak güvenilir bir şekilde nasıl URL oluşturabilirim?
- 23. Kuruluşumun güvenilir bir Windows ikilisini imzaladığını nasıl doğrularım?
- 24. Bir dizi grafikten renk serisinin rengi alma
- 25. OnGetColors olayını kullanarak bir TColorBox'a nasıl özel bir Renk ekleyebilirim?
- 26. Belirli bir uzunluktaki rastgele bir kelimeyi bir Trie'den nasıl alabilirim?
- 27. Bir client_id nereden alabilirim?
- 28. Renk
- 29. Renk Renk geçişleri ggplot
- 30. Bir XML belgesini ayrıştırmak ve döndürmek için Nokogiri'yi nasıl alabilirim?
Harika, teşekkürler! (# # F00 'nin de güzel kullanımı) :) –
'TypedArray'ınızı geri dönüştürmeyi unutmayın. –