सबसे पहले, मैंने this link का संदर्भ दिया कि मुझे अपने प्रश्न का उत्तर देना चाहिए या नहीं। मुझे लगा कि यह किसी भी समस्या का सामना करने वाले किसी के लिए बहुत उपयोगी हो सकता है, इसलिए मैं क्षमा चाहता हूं कि यह इस वेबसाइट के लिए उचित शिष्टाचार नहीं है (अपने स्वयं के प्रश्न का उत्तर देने के लिए)।
अब, मैं इस समस्या के समाधान खोजने के लिए चारों ओर ठोकर खा रहा हूं और परीक्षण और त्रुटि के साथ मैं सफल रहा हूं।
<com.actionbarsherlock.internal.widget.IcsSpinner
android:id="@+id/spinner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/title"
android:layout_margin="10sp"
android:layout_centerHorizontal="true"
android:textSize="18sp" />
ऊपर कोड स्पिनर जो ActionBarSherlock पुस्तकालय में है की ICS संस्करण का उपयोग करेगा: तो, है एक बार आप ActionBarSherlock एसडीके डाउनलोड किया है और अपनी परियोजना में स्थापित, अपने लेआउट कि स्पिनर को शामिल करेगा पैदा करते हैं। इसके बाद, आपकी गतिविधि में स्पिनर ऑब्जेक्ट की घोषणा और तत्काल (कास्टिंग का उपयोग करके)। लेकिन ध्यान दें कि आप सामान्य स्पिनर वर्ग का उपयोग नहीं करते हैं, तो आप IcsSpinner वर्ग ActionBarSherlock पुस्तकालय में पाया का उपयोग करें: अब
IcsSpinner spinner = (IcsSpinner)findViewById(R.id.spinner);
, तुम बस के रूप में आप सामान्य स्पिनर के लिए, की तरह होगा तो एक एडाप्टर बनाने के लिए:
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.layout.spinner_item, elements);
spinner.setAdapter(adapter);
अंत में, आपको onItemSelectedListener
सेट अप करने की आवश्यकता है। केवल प्रमुख अंतर यह है कि यहाँ आप IcsAdapterView.OnItemSelectedListener
बल्कि सिर्फ OnItemSelectedListener
से उपयोग करते हैं:
spinner.setOnItemSelectedListener(new IcsAdapterView.OnItemSelectedListener(){
@Override
public void onItemSelected(IcsAdapterView<?> parent, View view, int position, long id){
}
@Override
public void onNothingSelected(IcsAdapterView<?> parent){
}
});
और बस हो गया। स्पिनर ऑब्जेक्ट का उपयोग करके यह वास्तव में बहुत अलग नहीं है। जितना आसान है, मुझे समझने में थोड़ी देर लग गई, इसलिए, मुझे आशा है कि यह किसी के लिए उपयोगी होगा।
ओह, हाँ, और इतने की तरह, एक ActionBarSherlock विषय का उपयोग करने के (प्रकट) में भूल नहीं है:
android:theme="@style/Theme.Sherlock"
एक अच्छा जवाब के लिए +1। – Ahmad
एंड्रॉइड समर्थन पुस्तकालय के साथ स्पिनर की तरह आईसीएस का उपयोग करने का कोई तरीका? मैं एक्शनबार शेरलॉक का उपयोग नहीं कर रहा हूं। –
@ सुरेशेमलेमुडी [होलो रंग जनरेटर] (http://android-holo-colors.com/) करेगा, केवल अंतर पृष्ठभूमि है, ics स्पिनर रेखांकित है – oscarthecat