सबसे पहले, कृपया लंबे और कठिन विचार करें यदि आप वास्तव में Home
उस मामले के लिए बटन या किसी अन्य बटन को अक्षम करना चाहते हैं (उदाहरण के लिए Back
बटन), यह ऐसा कुछ नहीं है जिसे किया जाना चाहिए (कम से कम अधिकांश समय, यह एक बुरा डिज़ाइन है) ) है। मैं केवल अपने लिए बोल सकता हूं, लेकिन अगर मैंने कोई ऐसा ऐप डाउनलोड किया है जो मुझे OS बटन पर क्लिक करने जैसा कुछ नहीं करने देता है, तो अगली बात यह है कि मैं उस ऐप को अनइंस्टॉल कर दूंगा और बहुत खराब समीक्षा छोड़ दूंगा। मेरा यह भी मानना है कि आपके ऐप को ऐप स्टोर पर प्रदर्शित नहीं किया जाएगा।
अभी...
सूचना जो MX Player
अन्य अनुप्रयोगों के शीर्ष पर आकर्षित करने की अनुमति मांग रही है:
चूंकि आप डिवाइस Home
पर बटन को ओवरराइड नहीं कर सकते हैं Android
(कम से कम नवीनतम ओएस संस्करणों में नहीं)। MX Player
जब आप ऐप को "लॉक" करते हैं और Home
बटन पर क्लिक करते हैं, तो अपने लॉन्चर के ऊपर ही खींचता है ।
इसका एक उदाहरण देखने के लिए थोड़ा और अधिक सरल और सीधे समझने के लिए, आप फेसबुक मैसेंजर ऐप देख सकते हैं ।
जैसा कि मुझे एमएक्स प्लेयर Status Bar
और Navigation Bar
"ओवरराइडिंग" के बारे में कुछ और जानकारी प्रदान करने के लिए कहा गया था , मैं इन विषयों को भी शामिल करने के लिए अपना जवाब संपादित कर रहा हूं।
सबसे पहले, एमएक्स प्लेयर इमर्सिव फुल-स्क्रीन मोड ( देवबाइट्स वीडियो ) का उपयोग कर रहा है KitKat
।
Android 4.4 (API Level 19) setSystemUiVisibility () के लिए एक नया SYSTEM_UI_FLAG_IMMERSIVE ध्वज पेश करता है, जो आपके ऐप को "पूर्ण स्क्रीन" पर जाने देता है। यह ध्वज, जब SYSTEM_UI_FLAG_HIDE_NAVIGATION और SYSTEM_UI_FLAG_FULLSCREEN झंडे के साथ जोड़ा जाता है, नेविगेशन और स्थिति बार को छुपाता है और आपके ऐप को स्क्रीन पर सभी स्पर्श घटनाओं को कैप्चर करने देता है।
जब इमर्सिव फुल-स्क्रीन मोड सक्षम हो जाता है, तो आपकी गतिविधि सभी स्पर्श घटनाओं को प्राप्त करना जारी रखती है। उपयोगकर्ता सिस्टम सलाखों को उस क्षेत्र में आवक स्वाइप के साथ प्रकट कर सकता है जहां सिस्टम बार सामान्य रूप से दिखाई देते हैं। यह System_UI_FLAG_HIDE_NAVIGATION ध्वज (और SYSTEM_UI_FLAG_FULLSCREEN ध्वज, यदि लागू हो) को साफ करता है ताकि सिस्टम बार दिखाई दे। यह आपके View.OnSystemUiVisibilityChangeListener को भी ट्रिगर करता है , यदि सेट है। हालाँकि, यदि आप कुछ समय के बाद सिस्टम बार को अपने आप छुपाना चाहते हैं, तो आप इसके बजाय SYSTEM_UI_FLAG_IMMERSIVE_STICKY ध्वज का उपयोग कर सकते हैं । ध्यान दें कि ध्वज का "चिपचिपा" संस्करण किसी भी श्रोता को ट्रिगर नहीं करता है, क्योंकि इस मोड में अस्थायी रूप से दिखाए गए सिस्टम बार एक क्षणिक स्थिति में हैं।
दूसरा: स्टेटस बार
थर्ड को छुपाना : नेविगेशन बार को छुपाना
कृपया ध्यान दें कि हालांकि इमर्सिव फुल स्क्रीन का उपयोग केवल करने के लिए है KitKat
, Status Bar
और छुपाना Navigation Bar
केवल के लिए नहीं है KitKat
।
मुझे 2nd और 3rd के बारे में कहने के लिए बहुत कुछ नहीं है, आपको लगता है कि मुझे विश्वास है, यह किसी भी मामले में तेजी से पढ़ा जाता है। बस सुनिश्चित करें कि आप View.OnSystemUiVisibilityChangeListener पर पूरा ध्यान दें ।
मैंने एक जिस्ट जोड़ा है जो बताता है कि मेरा क्या मतलब है, यह पूरा नहीं हुआ है और कुछ फिक्सिंग की जरूरत है लेकिन आपको यह विचार मिलेगा। https://gist.github.com/Epsiloni/8303531
सौभाग्य यह लागू करने, और मज़ा है!