मेरे पास नीचे नेविगेशन और एक एक्शन बार के साथ जेटपैक नेविगेशन ग्राफ सेटअप है। नीचे के नेविगेशन में 3 टैब हैं। इनमें से 1 टैब में एक विस्तृत टुकड़ा है जिसे मैं एक्शन बार में बैक-एरो प्रदर्शित करना चाहता हूं।

MainActivity onCreate() में, मैंने जोड़ा है:

supportActionBar?.setDisplayHomeAsUpEnabled(true)

यह प्रत्येक टैब और टुकड़े पर बैक बटन प्रदर्शित करता है।

मैं बैक बटन के प्रदर्शन को कैसे रोक सकता हूं जब तक कि उपयोगकर्ता को एक गैर-शीर्ष स्तर के टुकड़े पर नेविगेट नहीं किया जाता है? क्या कोई ऐसा तरीका है जो यह पता लगाता है कि यह विशेष नेविगेशन कब हुआ है? अगर ऐसा है, तो मुझे लगता है कि मैं supportActionBar?.setDisplayHomeAsUpEnabled(false) जैसा कुछ कर सकता हूं

इसके अतिरिक्त, क्या कोई तरीका है कि मैं बाल पृष्ठों पर एक कस्टम बैक एरो प्रदर्शित कर सकता हूं? डिफ़ॉल्ट तीर UI में फ़िट नहीं होता है।

यदि आवश्यक हो तो अधिक विवरण प्रदान करने में प्रसन्नता हो रही है।

0
Joe 20 जून 2019, 01:55

1 उत्तर

सबसे बढ़िया उत्तर

आप setupWithNavController(BottomNavigationView,NavController) और setupActionBarWithNavController(AppCompatActivity,NavController,AppBarConfiguration) NavigationUI से। पहला नेविगेशन कंट्रोलर के नीचे नेविगेशन को बांध देगा, दूसरा नेविगेशन के संबंध में सपोर्ट एक्शन बार सेट करेगा।

AppBarConfiguration.getTopLevelDestinations() के साथ आप होंगे बैक एरो को प्रदर्शित करने के लिए कॉन्फ़िगर करने में सक्षम। डिफ़ॉल्ट केवल नेविगेशन ग्राफ़ की जड़ को शीर्ष स्तर के गंतव्य के रूप में मानना ​​​​है, लेकिन आप शीर्ष स्तर के गंतव्यों के सेट को परिभाषित करने के लिए किसी अन्य निर्माता का भी उपयोग कर सकते हैं।

2
tynn 20 जून 2019, 09:16