2012-03-07 13 views
5

मैंने "super.setIntegerProperty (" splashscreen ", R.drawable.splash) जोड़कर अपने फोनगैप एप्लिकेशन में एक स्पलैश स्क्रीन जोड़ा;" super.loadURL से पहले लाइन ... डिफ़ॉल्ट क्रियाशीलता में लाइन।फोर्स फोनगैप (एंड्रॉइड) स्पलैश स्क्रीन ओरिएंटेशन

क्या पूरे एप्लिकेशन को लॉक किए बिना केवल स्प्लैश स्क्रीन के अभिविन्यास को पोर्ट्रेट पर लॉक करने का कोई तरीका है?

उत्तर

1

आप एंड्रॉयड में अपने screenOrientation बदलकर PhoneGap (DroidGap) या Apache Cordova के नवीनतम संस्करण उपयोग करते रहे हैं, तो आप परिदृश्य को स्क्रीन अभिविन्यास मजबूर कर सकते हैं। एक्सएमएल फ़ाइल। जिसके परिणामस्वरूप DroidGap "इन्स्टेन्शियशन गतिविधि" कुछ इस तरह दिखना चाहिए:

 <activity 
     android:name="org.apache.cordova.DroidGap" 
     android:label="@string/app_name" 
     android:configChanges="orientation|keyboardHidden" 
     android:screenOrientation="landscape"   
     > 
     <intent-filter> 
     </intent-filter> 
    </activity> 
+6

क्या यह पूरे एप्लिकेशन के अभिविन्यास को परिदृश्य में लॉक नहीं करता है? मूल प्रश्न पूरे ऐप के अभिविन्यास को लॉक किए बिना स्प्लैश स्क्रीन अभिविन्यास को पोर्ट्रेट पर लॉक करने के बारे में है। –

0

splashscreen गतिविधि के onCreate विधि के अंदर निम्न लिखें:

setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);

+0

धन्यवाद, लेकिन समस्या यह है कि Phonegap साथ, splashscreen एक अलग गतिविधि नहीं है। अगर मैं उस गतिविधि के अभिविन्यास को मजबूर करता हूं, तो मैं पूरे आवेदन को मजबूर करता हूं। – user992804

0

अपने AndroidManifest.xml में इस लाइन जोड़ें:

4

कई खोजों के बाद मैंने पाया कि स्प्लैश स्क्रीन अभिविन्यास संबोधित करने के लिए सही तरीके से अपने MainActivity

में दो छवियों इस कोड का उपयोग का प्रबंधन करने के लिए है
if (getResources().getConfiguration().orientation == 2) { 
     super.setIntegerProperty("splashscreen", R.drawable.splashlandscape); 
     Log.d("Orientation", "Landscape"); 
    } 
    else { 
     super.setIntegerProperty("splashscreen", R.drawable.splashportrait); 
     Log.d("Orientation", "Portrait"); 
    } 
+0

यह काम करता है। धन्यवाद !!! – Rajaraman

5

निम्न समाधान एंड्रॉइड और आईओएस पर कॉर्डोवा 3+ के लिए काम करता है। यह केवल स्प्लैशस्क्रीन के लिए अभिविन्यास को लॉक करता है, फिर ऐप चलने के बाद इसे अनलॉक करता है।

config.xml में उन्मुखीकरण ठीक करें:

<preference name="orientation" value="portrait" /> 

तो यह अनलॉक करने के लिए इस screen orientation plugin का उपयोग एक बार एप्लिकेशन initialised गया है:

document.addEventListener("deviceready", function(){ 
    screen.unlockOrientation(); 
}, false); 
+0

धन्यवाद! एक जादू की तरह काम करता है! – Lotus

संबंधित मुद्दे