मेरे ऐप में मैंने घर को कुछ परिस्थितियों में गैर-डिफ़ॉल्ट ड्रॉ करने योग्य के रूप में सेट किया है। कभी-कभी घर के रूप में संकेतक को बदलने के बाद डिफ़ॉल्ट आइकन पर रीसेट किया जाना चाहिए।समर्थन कार्रवाई बार का उपयोग कर डिफ़ॉल्ट संकेत के रूप में डिफ़ॉल्ट संकेत कैसे दिखाएं?
मैं
getSupportActionBar().setHomeAsUpIndicator(0);
कौन सा documentation के अनुसार थीम सामान्य उपयोग करेगा कहते हैं का उपयोग कर की कोशिश की है। जब मैं इस, निम्न त्रुटि के साथ अनुप्रयोग क्रैश कार्य करें:
05-15 11:12:03.160: E/AndroidRuntime(13021): FATAL EXCEPTION: main
05-15 11:12:03.160: E/AndroidRuntime(13021): Process: xxxxx.yyyyyy.zzzzzz, PID: 13021
05-15 11:12:03.160: E/AndroidRuntime(13021): android.content.res.Resources$NotFoundException: Resource ID #0x0
05-15 11:12:03.160: E/AndroidRuntime(13021): at android.content.res.Resources.getValue(Resources.java:1233)
05-15 11:12:03.160: E/AndroidRuntime(13021): at android.content.res.Resources.getDrawable(Resources.java:756)
05-15 11:12:03.160: E/AndroidRuntime(13021): at android.content.Context.getDrawable(Context.java:402)
05-15 11:12:03.160: E/AndroidRuntime(13021): at android.support.v4.content.ContextCompatApi21.getDrawable(ContextCompatApi21.java:26)
05-15 11:12:03.160: E/AndroidRuntime(13021): at android.support.v4.content.ContextCompat.getDrawable(ContextCompat.java:319)
05-15 11:12:03.160: E/AndroidRuntime(13021): at android.support.v7.internal.widget.TintManager.getDrawable(TintManager.java:133)
05-15 11:12:03.160: E/AndroidRuntime(13021): at android.support.v7.widget.Toolbar.setNavigationIcon(Toolbar.java:754)
05-15 11:12:03.160: E/AndroidRuntime(13021): at android.support.v7.internal.app.ToolbarActionBar.setHomeAsUpIndicator(ToolbarActionBar.java:176)
05-15 11:12:03.160: E/AndroidRuntime(13021): at xxxxx.yyyyyy.zzzzzz.updateHomeIndicator(aaaaa.java:1711)
मैं जानता हूँ कि थीम डिफ़ॉल्ट मान सही ढंग से सेटअप है, अगर मैं एक कस्टम घर संकेतक के रूप में सेट नहीं, वापस तीर ठीक दिखाई देता है क्योंकि। setHomeAsUpIndicator(0)
कॉल करने का प्रयास करने से पहले मैं setDisplayHomeAsUpEnabled(true)
पर कॉल कर रहा हूं।
मुझे पता है कि मैं हमेशा अपने प्रोजेक्ट में अपरेटर संपत्ति के रूप में डिफ़ॉल्ट घर की प्रतिलिपि बना सकता हूं और उस संपत्ति का सीधे उपयोग कर सकता हूं, लेकिन यदि संभव हो तो मैं इस कार्यवाही से बचना चाहूंगा।
धन्यवाद!
ज़ैक
संपादित करें:
मैं भी कोशिश की है
getSupportActionBar().setHomeAsUpIndicator(null);
कौन सा कोई आइकन में परिणाम जो भी प्रदर्शित किया जा रहा।
आप बुलियन मूल्य के बजाय 0 क्यों गुजर रहे हैं? –
setHomeAsUpIndicator() API को एक ड्रायबल या int संसाधन आईडी मान की आवश्यकता होती है। कोई बूलियन पैरामीटर एपीआई नहीं है जो इसे पूरा करती है (जहां तक मुझे पता है)। – Zach
@ करलोसजे करीब पढ़ते हैं, इसे काम करना चाहिए। प्रलेखन में कहा गया है: 'यदि आप इस विधि में 0 पास करते हैं, तो थीम से डिफ़ॉल्ट ड्रॉइंग का उपयोग किया जाएगा।' यह दस्तावेज़ीकरण के अनुसार पूरी तरह मान्य है, हालांकि, ऐसा लगता है कि यदि आप एक कस्टम आइकन सेट करते हैं, तो आप कॉल नहीं कर सकते इसे शून्य के बाद इसे डिफ़ॉल्ट आइकन पर फिर से सेट करने के लिए। एपीआई के साथ यह एक कोने केस होना चाहिए। –