क्या एंड्रॉइड विचारों में सीएसएस क्लास चयनकर्ताओं के बराबर कुछ है? आरआईड की तरह कुछ लेकिन कई विचारों के लिए प्रयोग योग्य? मैं लेआउट पेड़ में अपनी स्थिति से स्वतंत्र विचारों के कुछ समूह को छिपाना चाहता हूं।एंड्रॉइड विचारों के लिए सीएसएस क्लास चयनकर्ताओं के बराबर?
उत्तर
मुझे लगता है कि आपको अपने लेआउट में सभी विचारों के माध्यम से पुन: प्रयास करना होगा, एंड्रॉइड की तलाश में: आईडी जिसे आप चाहते हैं। फिर दृश्यता को बदलने के लिए आप दृश्य सेट दृश्यता() का उपयोग कर सकते हैं। आप उन दृश्यों को चिह्नित करने के लिए एंड्रॉइड: आईडी के बजाय व्यू सेटट()/getTag() का उपयोग भी कर सकते हैं, जिन्हें आप संभालना चाहते हैं। उदाहरण के लिए, निम्नलिखित कोड एक सामान्य प्रयोजन विधि का उपयोग करता लेआउट पार करने के लिए:
// 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);
}
}
}
आप इस तरह के सभी दृश्यों के लिए एक ही टैग सेट कर सकते हैं और फिर आप सब इस तरह एक साधारण समारोह के साथ कि टैग होने दृश्य प्राप्त कर सकते हैं:
private static ArrayList<View> getViewsByTag(ViewGroup root, String tag){
ArrayList<View> views = new ArrayList<View>();
final int childCount = root.getChildCount();
for (int i = 0; i < childCount; i++) {
final View child = root.getChildAt(i);
if (child instanceof ViewGroup) {
views.addAll(getViewsByTag((ViewGroup) child, tag));
}
final Object tagObj = child.getTag();
if (tagObj != null && tagObj.equals(tag)) {
views.add(child);
}
}
return views;
}
जैसा कि श्लोमी श्वार्टज़ answer में बताया गया है। स्पष्ट रूप से यह सीएसएस कक्षाओं के रूप में उपयोगी नहीं है। लेकिन यह आपके विचारों को बार-बार फिर से शुरू करने के लिए लेखन कोड की तुलना में थोड़ा उपयोगी हो सकता है।
- 1. बिना सीएसएस क्लास चयनकर्ताओं को ओवरराइट करें! महत्वपूर्ण
- 2. नोकोगिरी के बराबर क्लोजर क्या है (xpath और css चयनकर्ताओं के साथ xml पार्सिंग के लिए)
- 3. सीएसएस चयनकर्ताओं के बीच प्राथमिकताओं क्या हैं
- 4. जावाएफएक्स सीएसएस गुणों और चयनकर्ताओं के लिए सर्वश्रेष्ठ संदर्भ
- 5. Regex लापता चयनकर्ताओं सीएसएस अमान्य
- 6. एंड्रॉइड नेटिव लेआउट के लिए डीओएम इंस्पेक्टर के बराबर है?
- 7. कम सीएसएस - बॉडी क्लास
- 8. सीएसएस चयनकर्ताओं में विशेष वर्ण
- 9. स्ट्रिंग के लिए सी # में स्कैनर क्लास के बराबर है?
- 10. आईओएस एंड्रॉइड फिनिश के बराबर बराबर()
- 11. क्या डेटाकॉन्टेक्स्ट क्लास के बराबर LINQPad है?
- 12. सीएसएस अनुकूलन, नेस्टेड चयनकर्ताओं, और पहचान पत्र/वर्ग के नाम
- 13. सीएसएस: चयनकर्ता लक्ष्य नहीं: पहले और: चयनकर्ताओं के बाद
- 14. पोर्टेबल क्लास लाइब्रेरी मेथडबेस के बराबर। GetCurrentMethod
- 15. एंड्रॉइड फ्लोटिंग व्यू (अन्य विचारों के ऊपर)
- 16. 'डस्ट मी सिलेक्टर' के अलावा अप्रयुक्त सीएसएस चयनकर्ताओं को हटाएं?
- 17. कुछ प्रकार के सीएसएस चयनकर्ताओं की ब्राउज़र संगतता
- 18. सीएसएस में छद्म चयनकर्ताओं का मिश्रण?
- 19. jQuery पेट के चयनकर्ताओं
- 20. एंड्रॉइड के लिए आईओएस 'पहचानकर्ता फॉरवेंडर के बराबर है?
- 21. जावा एक्सएमएल पार्सिंग के लिए चयनकर्ताओं की तरह jQuery है?
- 22. सभी सीएसएस फ़ॉन्ट गुणों के लिए एक सीएसएस घोषणा
- 23. क्या वेब अनुप्रयोगों के लिए सीएसएस क्लास नामकरण मानक हैं?
- 24. मॉडल के बिना विचारों के लिए Marionette.ItemView का उपयोग करना?
- 25. jquery चयनकर्ताओं और जेएस चयनकर्ताओं के बीच क्या अंतर है?
- 26. विचारों का उपयोग करने के लिए या विचारों का उपयोग न करने के लिए
- 27. मैं कस्टम विचारों या अन्य एंड्रॉइड कक्षाओं में एंड्रॉइड इंजेक्शन क्लास का उपयोग कैसे करूं?
- 28. विचारों के लिए संकेतों का उपयोग करें?
- 29. विचारों के लिए क्या अच्छे हैं?
- 30. रेलों में विचारों के लिए पार्सिंग प्रक्रिया