Android सिस्टम, किसी डिवाइस से कीबोर्ड जोड़ने या हटाने पर, हर बार कॉन्फ़िगरेशन में बदलाव करता है. डिवाइस से अलग किए जा सकने वाले कीबोर्ड वाली बड़ी स्क्रीन वाले डिवाइसों पर, लोगों को बेहतर अनुभव देने और उनकी प्रॉडक्टिविटी बढ़ाने के लिए, आपके ऐप्लिकेशन को कीबोर्ड कॉन्फ़िगरेशन में होने वाले बदलावों को असरदार तरीके से मैनेज करना होगा.
नतीजे
आपका ऐप्लिकेशन, चालू गतिविधि को फिर से बनाए बिना, बाहरी कीबोर्ड को जोड़ने या हटाने पर प्रतिक्रिया देता है.
वर्शन के साथ काम करने वाली सुविधाएं
इस सुविधा को लागू करने के लिए, अपने प्रोजेक्ट का minSDK API लेवल 8 पर सेट करें. इसके लिए,
View#onConfigurationChanged() देखें.
डिपेंडेंसी
कोई नहीं.
कीबोर्ड बदलने पर, गतिविधि को फिर से बनने से रोकना
डिवाइस से अलग किए जा सकने वाले कीबोर्ड को जोड़ने या हटाने पर, अपनी गतिविधि को फिर से बनने से रोकने के लिए, अपने ऐप्लिकेशन मेनिफ़ेस्ट के
configChanges एट्रिब्यूट में कीबोर्ड से जुड़ी वैल्यू जोड़ें.
साथ ही, गतिविधि की व्यू हैरारकी में एक व्यू जोड़ें, ताकि आपका ऐप्लिकेशन
कॉन्फ़िगरेशन में होने वाले बदलावों को सुन सके.
1. configChanges एट्रिब्यूट की जानकारी देना
ऐप्लिकेशन मेनिफ़ेस्ट में मौजूद <activity> एलिमेंट को अपडेट करें. इसके लिए, पहले से मैनेज किए जा रहे कॉन्फ़िगरेशन
में होने वाले बदलावों की सूची में,
keyboard|keyboardHidden वैल्यू जोड़ें:
<activity
...
android:configChanges="...|keyboard|keyboardHidden">
2. व्यू हैरारकी में एक खाली व्यू जोड़ना
एक नया व्यू तय करें और व्यू के onConfigurationChanged() तरीके में अपना हैंडलर कोड जोड़ें:
Kotlin
val v = object : View(this) {
override fun onConfigurationChanged(newConfig: Configuration?) {
super.onConfigurationChanged(newConfig)
// Handler code here.
}
}
Java
View v = new View(this) {
@Override
protected void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
// Handler code here.
}
};
खास बातें
android:configChanges: ऐप्लिकेशन मेनिफ़ेस्ट के<activity>एलिमेंट का एट्रिब्यूट. सिस्टम को उन कॉन्फ़िगरेशन में होने वाले बदलावों के बारे में बताता है जिन्हें ऐप्लिकेशन मैनेज करता है.View#onConfigurationChanged(): यह तरीका, ऐप्लिकेशन के नए कॉन्फ़िगरेशन के लागू होने पर प्रतिक्रिया करता है.
इस गाइड को शामिल करने वाले कलेक्शन
यह गाइड, चुनिंदा क्विक गाइड कलेक्शन का हिस्सा है. इनमें Android डेवलपमेंट के बड़े लक्ष्यों के बारे में बताया गया है: