"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > एंड्रॉइड में स्थिति के बजाय मूल्य के आधार पर स्पिनर का चयन कैसे सेट करें?

एंड्रॉइड में स्थिति के बजाय मूल्य के आधार पर स्पिनर का चयन कैसे सेट करें?

2024-11-10 को प्रकाशित
ब्राउज़ करें:402

How to Set a Spinner\'s Selection by Value, Not Position in Android?

स्पिनर के चयन को मूल्य के आधार पर सेट करना, न कि स्थिति के आधार पर

किसी दृश्य को अपडेट करते समय और स्पिनर का चयन डेटाबेस में संग्रहीत मूल्य से मेल खाना चाहिए, पारंपरिक दृष्टिकोण एडॉप्टर पर इंडेक्सऑफ विधि का उपयोग करके संबंधित स्थिति का पता लगाना है। हालाँकि, इस दृष्टिकोण को एक बाधा का सामना करना पड़ता है क्योंकि एडॉप्टर ऐसी कोई विधि प्रदान नहीं करता है।

इस चुनौती को दूर करने के लिए, ArrayAdapter की getPosition विधि का उपयोग करना अधिक उपयुक्त दृष्टिकोण है। यह विधि, जब एक उपयुक्त ArrayAdapter के साथ जोड़ी जाती है, तो एक विशिष्ट मान से जुड़ी स्थिति की पहचान करने में सक्षम होती है।

एक ऐसे परिदृश्य पर विचार करें जहां mSpinner नामक स्पिनर में "कुछ मान" का मान होता है। इसकी स्थिति का पता लगाने और तुलना करने के लिए, इन चरणों का पालन करें:

संसाधन फ़ाइल R.array.select_state से एक ArrayAdapter बनाएं:

ArrayAdapter adapter = ArrayAdapter.createFromResource(this, R.array.select_state, android.R.layout.simple_spinner_item);

स्पिनर का एडॉप्टर और ड्रॉपडाउनव्यू रिसोर्स सेट करें:

adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
mSpinner.setAdapter(adapter);

अगला, यदि तुलना की जाने वाली वैल्यू (compareValue) शून्य नहीं है:

if (compareValue != null) {
    int spinnerPosition = adapter.getPosition(compareValue);
    mSpinner.setSelection(spinnerPosition);
}

इस दृष्टिकोण को नियोजित करके, स्पिनर का चयन डेटाबेस में संग्रहीत मूल्य के आधार पर सटीक रूप से सेट किया जा सकता है, जो दृश्य अपडेट के दौरान एक सहज उपयोगकर्ता अनुभव प्रदान करता है।

नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3