2015-04-18 5 views
5

इस पृष्ठ पर ट्यूटोरियल के बाद (200 9 में लिखा गया) अब और काम नहीं करता है। http://www.androidsnippets.com/how-to-make-an-activity-fullscreenइमर्सिव मोड में फोर्स एंड्रॉइड libgdx

public class FullScreen extends Activity { 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     requestWindowFeature(Window.FEATURE_NO_TITLE); 
     getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 
           WindowManager.LayoutParams.FLAG_FULLSCREEN); 

     setContentView(R.layout.main); 
    } 
} 

इसी तरह, android.xml में विषय बदलने की कोशिश कर रहा कोई प्रभाव नहीं है:, enter image description here

कुछ घंटों के लिए वेब परिशोध के बाद मैं नहीं कर सकते: android:theme="@android:style/Theme.NoTitleBar.Fullscreen"

यहाँ एक स्क्रीनशॉट है कोई भी लेख ढूंढें जो मेरी मदद कर सके। तो कैसे, libgdx के संस्करण 1.5.4 में, क्या मुझे immersive full screen मिल सकता है?

public class AndroidLauncher extends AndroidApplication { 
    @Override 
    protected void onCreate (Bundle savedInstanceState) { 
     hideSystemUi(); 

     super.onCreate(savedInstanceState); 
     AndroidApplicationConfiguration config = new AndroidApplicationConfiguration(); 
     config.hideStatusBar=true; 
     config.useImmersiveMode=true; 
     initialize(new game(), config); 
    } 


    private void hideSystemUi() { 
     getWindow().getDecorView().setSystemUiVisibility(
      View.SYSTEM_UI_FLAG_LAYOUT_STABLE 
      | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION 
      | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN 
      | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION 
      | View.SYSTEM_UI_FLAG_FULLSCREEN 
      | View.SYSTEM_UI_FLAG_IMMERSIVE); 
    } 
} 

उत्तर

3

एंड्रॉयड गतिविधि में इस प्रयास करें::

---- संपादित ---- यहाँ अब पूरी तरह से काम कर रहा है कोड

@Override 
public void onWindowFocusChanged(boolean hasFocus) { 
    super.onWindowFocusChanged(hasFocus); 
    if (hasFocus) { 
     getWindow().getDecorView().setSystemUiVisibility(
      View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | 
      View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | 
      View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | 
      View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY); 
    } 
} 

नोट इस केवल काम एपीआई स्तर 1 9 या उससे ऊपर।

+0

कोई गतिविधि वर्ग है लक्षित कर OnWindowFocusChanged विधि करने के लिए जोड़ा जाना आवश्यक है। यही कारण है कि पहला व्यक्ति –

+0

काम नहीं करता है हाँ: https://github.com/anubiann00b/TileArena/blob/master/android/src/game/tile/arena/android/AndroidLauncher.java आपका लॉन्चर विस्तारित करता है 'एप्लिकेशन' जो 'गतिविधि' को बढ़ाता है। –

+0

अभी भी कुछ भी नहीं: http://jsfiddle.net/85e9hqve/ –

0

दुर्भाग्य से मैं अपने वर्तमान प्रतिष्ठा की वजह से टिप्पणी नहीं कर सकता, लेकिन मैं ने पाया है कि जोड़ने:

config.hideStatusBar = true; 
config.useImmersiveMode = true; 

AndroidLauncher वर्ग में खो जाने में एप्लिकेशन दिखाने के लिए पर्याप्त हालांकि एप्लिकेशन मानक में शुरू होगा है मोड और फिर इमर्सिव मोड के लिए अद्यतन, एंड्रॉयड इमर्सिव मोड के बारे में अधिक जानकारी:

आप SYSTEM_UI_FLAG_IMMERSIVE_STICKY ध्वज का उपयोग करते हैं, प्रणाली में एक आवक कड़ी चोट सलाखों क्षेत्रों का कारण बनता है सलाखों के अस्थायी रूप से एक अर्द्ध पारदर्शी राज्य में प्रदर्शित करने, लेकिन कोई झंडे सी नहीं हैं लीडर, और आपके सिस्टम यूआई दृश्यता परिवर्तन श्रोताओं को ट्रिगर नहीं किया जाता है। एक छोटी देरी के बाद सलाखों को स्वचालित रूप से फिर से छुपाएं, या यदि उपयोगकर्ता स्क्रीन के बीच में इंटरैक्ट करता है।

Android sdk page
तो मेरी निष्कर्ष होगा कि config.useImmersiveMode चिपचिपा झंडा का उपयोग करें।

एक तरफ ध्यान दें पर, @TargetApi (Build.VERSION_CODES.HONEYCOMB) जब एक API LVL कम से कम 11

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