मैं अपने स्पिनर के ड्रॉप डाउन व्यू में दो मान प्रदर्शित करना चाहता हूं।कस्टम सेटड्रॉपडाउन व्यू रिसोर्स आइटम का उदाहरण
वर्तमान में, इसका केवल शहर का नाम है, लेकिन मैं इसे एक छोटा दूरी क्षेत्र भी जोड़ना चाहता हूं।
MyCity<MyCityDistance> dataAdapter;
dataAdapter = new MyCity(this, R.layout.mycityrow, list);
dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
मैं मेरे विचार और धारक आदि exapanding कस्टम डेटा एडाप्टर के लिए सभी कोड है,
हालांकि, आइटम जो शो हो जाता है दोनों शहर और मेरे वर्तमान स्थान से इसकी दूरी प्रदर्शित नहीं करता है।
यह केवल दिखाता है कि MyCityDistance क्लास के toString() विधि में ओवरराइड किया गया है।
मैं भी
dataAdapter.setDropDownViewResource(R.layout.mycityrow);
लेकिन, कोई सफलता की स्थापना की कोशिश की। यह एक त्रुटि फेंकता है। अपने स्वयं के कस्टम setDropDownViewResource()
बनाने का एक अच्छा उदाहरण
04-02 11:05:22.600: E/AndroidRuntime(367): java.lang.IllegalStateException: ArrayAdapter requires the resource ID to be a TextView
04-02 11:05:22.600: E/AndroidRuntime(367): at android.widget.ArrayAdapter.createViewFromResource(ArrayAdapter.java:347)
04-02 11:05:22.600: E/AndroidRuntime(367): at android.widget.ArrayAdapter.getDropDownView(ArrayAdapter.java:376)
04-02 11:05:22.600: E/AndroidRuntime(367): at android.widget.Spinner$DropDownAdapter.getDropDownView(Spinner.java:332)
क्या है?
भले ही मैं setDropDownViewResource()
लाइन पर टिप्पणी करता हूं, मुझे वही त्रुटि मिलती है।
नोट: केवल प्रभाव mycityrow
वर्तमान है कि स्पिनर का पहला तत्व mycityrow
के लेआउट के अनुसार दिखाया गया है। हालांकि, जब मैं ड्रॉप डाउन खोलता हूं, तो वह लेआउट गुम हो जाता है। मैं ड्रॉप डाउन चयन के दौरान भी वही लेआउट चाहता हूं।
मुझे आश्चर्य है कि यह एक शून्य माता-पिता के साथ कैसे काम करता है? –
माता-पिता को शून्य के रूप में पास करना 'attachToRoot' को लेआउटइनफ्लेटर का उपयोग करके फुलाए जाने के बराबर है। – st0le
इस कोड को लागू करने वाला समाधान मिला :) धन्यवाद –