Android görünümlerin CSS sınıfı seçicilere benzer bir değeri var mı? R.id gibi bir şey ama çoklu görünümler için kullanılabilir mi? Düzen ağacındaki konumlarından bağımsız olarak bazı görüntü gruplarını gizlemek istiyorum.Android görünümleri için CSS sınıfı seçmenlerin eşdeğeri?
12
A
cevap
4
Sizin düzeninizdeki tüm görünümler boyunca yinelemeye ihtiyaç duyacağınızı düşünüyorum, istediğiniz android: id. Görünürlüğü değiştirmek için View setVisibility() öğesini kullanabilirsiniz. Kullanmak istediğiniz görünümleri işaretlemek için android: kimliği yerine setTag()/getTag() işlevini de kullanabilirsiniz. Örneğin, aşağıdaki kod düzenini çapraz bir genel amaçlı bir yöntem kullanır: Bu tür tüm görünümler için aynı etiketi ayarlayabilirsiniz
// Get the top view in the layout.
final View root = getWindow().getDecorView().findViewById(android.R.id.content);
// Create a "view handler" that will hide a given view.
final ViewHandler setViewGone = new ViewHandler() {
public void process(View v) {
// Log.d("ViewHandler.process", v.getClass().toString());
v.setVisibility(View.GONE);
}
};
// Hide any view in the layout whose Id equals R.id.textView1.
findViewsById(root, R.id.textView1, setViewGone);
/**
* Simple "view handler" interface that we can pass into a Java method.
*/
public interface ViewHandler {
public void process(View v);
}
/**
* Recursively descends the layout hierarchy starting at the specified view. The viewHandler's
* process() method is invoked on any view that matches the specified Id.
*/
public static void findViewsById(View v, int id, ViewHandler viewHandler) {
if (v.getId() == id) {
viewHandler.process(v);
}
if (v instanceof ViewGroup) {
final ViewGroup vg = (ViewGroup) v;
for (int i = 0; i < vg.getChildCount(); i++) {
findViewsById(vg.getChildAt(i), id, viewHandler);
}
}
}
3
ve sonra bu gibi basit bir fonksiyonu ile bu etiketi olan tüm görünümleri elde edebilirsiniz:
Burada açıklandığı gibi Shlomi Schwartz answer. Açıkçası bu css sınıfları kadar kullanışlı değildir. Ancak bu, görüşlerinizi tekrar tekrar tekrar yazmak için kod yazarken biraz yararlı olabilir.
İlgili konular
- 1. Android Benim uygulamada görünümleri
- 2. Java/Android için TPL Eşdeğeri
- 3. Geçerli kullanıcı yeni Django sınıfı görünümleri formunda
- 4. Sayfa web görünümleri için curl etkisi Android
- 5. Belirli bir CSS sınıfı
- 6. css sınıfı seçilmiyor mu?
- 7. CSS - LESS sınıfı kalıtım
- 8. Regex CSS sınıfı
- 9. dat.gui özel css sınıfı
- 10. Android Görünümleri değişikliklerle nasıl güncellenir?
- 11. android MultiAutoCompleteTextView - özel görünümleri gösteriliyor
- 12. Android 1.6 eşdeğeri EXTRA_GATEWAY_URI
- 13. Android clipPath donanım eşdeğeri için eşdeğer View
- 14. uygulanması css sınıfı kullanılarak Html.DisplayFor
- 15. css: hover sözde sınıfı çalışmıyor
- 16. Date_select'e bir CSS sınıfı ekleme
- 17. javafx flowpane 's columnHalignment için bir css eşdeğeri var mı?
- 18. ScrollView'de Çoklu Web Görünümleri Sorunları çözme (Android)
- 19. NSMethodSignature & NSInvocation eşdeğeri eşdeğeri 2
- 20. Android dialoginterface iç iletişim görünümleri olsun
- 21. android listviews: üstbilgi ve altbilgi görünümleri
- 22. Mac için CodeKit - Windows eşdeğeri?
- 23. Vector2D sınıfı android
- 24. Android NetworkManager Util Sınıfı
- 25. Rails form oluşturucu yardımcı yöntemleri için varsayılan CSS sınıfı
- 26. Kodda kontrol etmek için iki CSS Sınıfı nasıl eklenir?
- 27. Her etiket için birden çok CSS sınıfı güvenli midir?
- 28. Html.RouteLink ile bir css sınıfı ekleme
- 29. Adobe Illustrator ile CSS sınıfı özniteliğini ayarlama
- 30. CSS: -webkit-touch-callout alternatifleri android için