android - शिक्षा का उन्मुखीकरण




चित्र पर स्क्रीन उन्मुखीकरण परिदृश्य वापस नहीं चल रहा है (5)

मैंने इस मुद्दे पर घंटों के लिए अपने मस्तिष्क को खदेड़ दिया है। मैंने एक मुख्य। एक्सएमएल बनाया है और एक रेस / लेआउट-भूमि (लैंडस्केप) प्रारूप के लिए और एक रेस / लेआउट में पोर्ट के लिए एक डिज़ाइन किया है।

जब मैं एमुलेटर (ctrl-F11) को घुमाए, तो मेरा ऐप सही मुख्य। एक्सएमएल का प्रयोग करके परिदृश्य में ठीक से घूमता है, लेकिन चित्र पर आने वाले बाद के रोटेशन में केवल लैंडस्केप मेल। एक्सएमएल रहता है।

यह 2.0 एवीडी में किया गया था ..

उत्सुकता से मैंने एकाधिक संकल्पों के लिए नया नमूना कोड डाउनलोड किया था और मुझे उम्मीद है कि इस ऐप के साथ मेरी आश्चर्यजनक रोटेशन के लिए नया 2.1 एवीडी बनाना होगा, जैसा कि उम्मीद की जाती है। इसलिए मैंने तब 2.1 एवीडी पर अपने ऐप की कोशिश करने का फैसला किया और यह पूरी तरह से काम करता है।

तो, क्या यह 2.0 एडीडी में एक बग है या कुछ खास है <2.1 एसडीके संस्करणों के लिए क्या करना है?

यह मुझे पागल कर रहा है, क्योंकि कोई भी इस मुद्दे का उल्लेख नहीं किया था।

अग्रिम में धन्यवाद


जब तक आप निर्दिष्ट नहीं करते

<activity android:name="MainActivity" android:configChanges="orientation">

आपके मैनिफेस्ट में, मुझे लगता है कि आपका ऐप स्वचालित रूप से सही लेआउट.एक्सएमएल चुन सकता है। तो, मेरे लिए एमुलेटर में एक बग की तरह लगता है वैसे भी, मुझे पता चला कि एमुलेटर अन्य तरीकों से छोटी गाड़ी है पूर्व। जब आप ओरिएंटेशन वापस बदलते हैं तो यह दो बार कोड चलाता है।


हाँ, इम्यूलेटर एक बिट छोटी गाड़ी है जब यह ओरिएंटेशन परिवर्तन की बात आती है मैंने इस विशिष्ट समस्या का अनुभव नहीं किया है, लेकिन यह कभी-कभी अजीब बातें करता है हालांकि यह निश्चित रूप से <2.1 एसडीके, एक भौतिक फोन पर कम से कम एक मुद्दा नहीं है, क्योंकि मैं अभी भी अपने हीरो पर v1.5 के साथ रह रहा हूं और यह सही लेआउट फ़ोल्डर को ठीक से जीएमएल फाइलों को प्राप्त करने के लिए ओरिएंटेशन परिवर्तन को संभालता है से।


एफडब्ल्यूआईडब्ल्यू, यह आधिकारिक रूप से बग के रूप में यहां बताया गया है


मुझे भी एक ही समस्या का सामना करना पड़ा था। मैंने इसे हल किया मुझे नहीं लगता कि यह एक इम्यूलेटर बग है। मुझे लगता है कि कुछ असली फोन में भी यह इस तरह व्यवहार करेंगे मुख्य कारण यह है कि गतिविधि ताज़ा नहीं है आप एक काम कर सकते हैं - ओवरराइड

public void onConfigurationChanged(Configuration newConfig) {
    // TODO Auto-generated method stub
    super.onConfigurationChanged(newConfig);
    startActivity(getIntent());
    finish();

}

और वर्तमान गतिविधि पुनः लोड करें यह तुम्हे मदद करेगा।


मैंने केवल 2.1 विकास किया है, लेकिन एक और सोचा था कि मैं बस सीटीआरएल-एफ 11 (पिछले लेआउट ओरिएंटेशन पर स्विच) की बजाय सीटीआरएल-एफ 12 (स्विचिंग लेआउट ओरिएंटेशन पर स्विच) की कोशिश करूँगा और कुछ परिवर्तनों को देखें। एम्यूलेटर को नियंत्रित करना

इसके अलावा, कई जीवन चक्र विधियां हैं जिन्हें आप पर्दे के पीछे क्या हो रहा है की निगरानी के लिए ओवरराइड कर सकते हैं यह आपको बता सकता है कि क्या एमुलेटर में कोई बग है





android-emulator