प्रलेखन का Toolbar
कहना है
यदि कोई एप्लिकेशन लोगो छवि का उपयोग करता है तो उसे शीर्षक और उपशीर्षक को छोड़ने पर दृढ़ता से विचार करना चाहिए।
शीर्षक हटाने का उचित तरीका क्या है?
toolbar.setTitle("");
प्रलेखन का Toolbar
कहना है
यदि कोई एप्लिकेशन लोगो छवि का उपयोग करता है तो उसे शीर्षक और उपशीर्षक को छोड़ने पर दृढ़ता से विचार करना चाहिए।
शीर्षक हटाने का उचित तरीका क्या है?
toolbar.setTitle("");
जवाबों:
getSupportActionBar().setDisplayShowTitleEnabled(false);
setSupportActionBar()
। इस उत्तर को चुनना क्योंकि यह आधिकारिक संदर्भ के अनुसार ऐसा करने का आधिकारिक तरीका है:Set whether an activity title/subtitle should be displayed.
टूलबार शीर्षक को छिपाने / बदलने का सही तरीका यह है:
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setTitle(null);
ऐसा इसलिए है क्योंकि जब आप कॉल करते हैं setSupportActionBar(toolbar);
, तो getSupportActionBar()
हर चीज एक्शन बार को संभालने की जिम्मेदारी होगी, न कि टूलबार ऑब्जेक्ट की।
यहाँ देखें
इसे इस्तेमाल करे...
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_landing_page);
.....
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar_landing_page);
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayShowTitleEnabled(false);
.....
}
इस पर मेरे जवाब का कारण यह है कि सबसे अधिक उत्तर दिया गया उत्तर मेरी समस्या को हल करने में विफल रहा। मैंने ऐसा करके इस समस्या का पता लगाया है।
<activity android:name="NAME OF YOUR ACTIVITY"
android:label="" />
उम्मीद है कि इससे दूसरों को भी मदद मिलेगी।
<intent-filter>
उस गतिविधि पर है जो उपयोगकर्ताओं को एक URL (उदाहरण के लिए) पर क्लिक करके अपने ऐप को खोलने की अनुमति देने के लिए है, तो अस्वीकरण संवाद का कोई शीर्षक नहीं होगा!
शीर्षक अपने से दूर करने के लिए एक और तरीका है Toolbar
करने के लिए है null
इसलिए की तरह बाहर यह:
Toolbar toolbar = (Toolbar) findViewById(R.id.my_awesome_toolbar);
toolbar.setTitle(null);
यह
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayShowTitleEnabled(false);
//toolbar.setNavigationIcon(R.drawable.ic_toolbar);
toolbar.setTitle("");
toolbar.setSubtitle("");
//toolbar.setLogo(R.drawable.ic_toolbar);
यदि आप टूलबार कोड के नीचे आज़मा रहे हैं:
toolbar.setTitle("");
आप किसी भी एक बंदे का उपयोग कर सकते हैं क्योंकि दोनों एक ही तरह से काम करते हैं:
getSupportActionBar().setDisplayShowTitleEnabled(false);
और
getSupportActionBar().setTitle(null);
उपयोग कहाँ करें:
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayShowTitleEnabled(false);
या:
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setTitle(null);
Toolbar actionBar = (Toolbar)findViewById(R.id.toolbar);
actionBar.addView(view);
setSupportActionBar(actionBar);
getSupportActionBar().setDisplayShowTitleEnabled(false);
इस लाइन पर ध्यान दें getSupportActionBar().setDisplayShowTitleEnabled(false);
मुझे नहीं पता कि यह सही तरीका है या नहीं लेकिन मैंने इस तरह से अपनी शैली बदल दी है।
<style name="NoActionBarStyle" parent="Theme.AppCompat.Light.NoActionBar">
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="windowActionBar">false</item>
<item name="android:windowNoTitle">true</item>
</style>
यदि आपका डिफ़ॉल्ट टूलबार उपयोग कर रहा है तो आप इस कोड को जोड़ सकते हैं
Objects.requireNonNull(getSupportActionBar()).setDisplayShowTitleEnabled(false);
यह स्पष्ट है, लेकिन App Theme
डिज़ाइन में चयन केवल लेआउट संस्करण के दौरान एक प्रारूप प्रदर्शित करने के लिए है, सेल फोन में दिखने वाले वास्तविक ऐप से संबंधित नहीं है। मेरे मामले में, डिजाइन में कोई शीर्षक पट्टी नहीं है, लेकिन शीर्षक पट्टी हमेशा सेल फोन में थी।
मैं एंड्रॉइड प्रोग्रामिंग के साथ शुरू कर रहा हूं और एक सही समाधान खोजने के लिए लड़ रहा हूं।
केवल प्रकट फ़ाइल को बदलें ( AndroidManifest.xml
) पर्याप्त नहीं है क्योंकि शैली को पूर्वनिर्धारित करने की आवश्यकता है styles.xml
। इसके अलावा लेआउट फ़ाइलों को बदलना बेकार है।
के सभी प्रस्तावित समाधान Java
या Kotlin
मेरे लिए नाकाम रही है। उनमें से कुछ ऐप को क्रैश कर देते हैं। और यदि कोई कभी भी (मेरे जैसा) ऐप में टाइटल बार का उपयोग करने का इरादा नहीं करता है, तो स्टैटिक सॉल्यूशन क्लीनर है।
मेरे लिए 2019 में काम करने वाला एकमात्र समाधान (Android Studio 3.4.1) है:
में styles.xml
(एप्लिकेशन / res / values के तहत) पंक्तियां जोड़ें:
<style name="AppTheme.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
के बाद AndroidManifest.xml
(एप्लिकेशन / मैनिफेस्ट के तहत)
बदलने के
android:theme="@style/AppTheme">
द्वारा
android:theme="@style/AppTheme.NoActionBar">
किसी ने उल्लेख नहीं किया:
@Override
protected void onCreate(Bundle savedInstanceState) {
supportRequestWindowFeature(Window.FEATURE_NO_TITLE);
super.onCreate(savedInstanceState);
}
toolbar.setTitle(null);
// शीर्षक को हटा दें
Toolbar toolbar = findViewById(R.id.myToolbar);
toolbar.setTitle("");