एंड्रॉइड में किसी भी प्रकार की 'पुनरावर्तक' प्रकार की कार्यक्षमता है? मेरे पास एक रिश्तेदार लेआउट है (एक सूचीदृश्य में एक पंक्ति के अंदर) और अंदर मैं टेक्स्टविज़ की एक श्रृंखला को एक के बाद एक प्रदर्शित करना चाहता हूं (जैसे कि वे सूचीदृश्य पंक्ति में बाल पंक्तियां हैं)। मुद्दा यह है कि उन "बाल पंक्तियों" की संख्या अलग-अलग होगी। क्या ऐसा करने का कोई तरीका है, या क्या मुझे कोड में टेक्स्टव्यू ऑब्जेक्ट्स बनाना चाहिए, और प्रोग्रामिक रूप से उन्हें रैखिक या टेबल लेआउट में जोड़ना चाहिए?एंड्रॉइड रिपेटर जैसी कार्यक्षमता
उत्तर
एक विकल्प टेक्स्ट व्यू Multi-line टेक्स्ट का समर्थन करता है। तो आप नई लाइनों के लिए "\ n" का उपयोग करके स्ट्रिंगबिल्डर के साथ टेक्स्ट बना सकते हैं, और कई टेक्स्ट दृश्यों के बारे में चिंता करने की ज़रूरत नहीं है।
निकटतम बात (अलावा ListView/ListAdapter, स्वाभाविक रूप से) कि मैं बेतकल्लुफ़ के बारे में सोच सकते हैं ViewSwitcher और ViewSwitcher.ViewFactory है, लेकिन वास्तव में जादुई कुछ नहीं बताया गया है: यह एक अंतरफलक है कि आप एक दृश्य प्राप्त करने के लिए कॉल कर सकते हैं।
चूंकि यह देखने के लिए केवल एक पंक्ति है और इसे अपने वर्तमान पदानुक्रम में जोड़ दें, हालांकि (View.inflate(context, R.layout.somelayout, myContainerViewGroup)
) कुछ भारी के साथ जाने के लिए मूर्खतापूर्ण लगता है, लेकिन यदि आप किसी प्रकार की फैक्ट्री में बेहतर लपेटने लगते हैं, एओएसपी source for ViewSwitcher जांचें।
हम्म, यह एक अच्छा समाधान की तरह लगता है। एकमात्र मुद्दा यह है कि मुझे प्रत्येक 'पंक्ति' के बीच में एक सफेद अलगाव के साथ, एक हल्के नीले रंग के बॉक्स में दिखाई देने के लिए प्रत्येक 'बाल पंक्ति' की आवश्यकता होती है। – Ben