दिलचस्प पोस्ट
MySQL में वर्गीकृत रैंकिंग कैसे करें PHP: कुकी डोमेन / उपडोमेन नियंत्रण इस मामले में वास्तविक गति और वास्तविक हाई 0.0 क्यों हैं? एक स्क्रॉल करने योग्य फलक में उपयोग के लिए शुद्ध जावा एचटीएमएल दर्शक / रेंडरर हाइबरनेट ऑरेकल अनुक्रम बड़े अंतर पैदा करता है डीओएम परिवर्तनों का पता लगाने / निगरानी करने का सबसे प्रभावी तरीका? कौन प्राथमिकता, maxRequestLength या maxAllowedContentLength? 0 – 100 के बीच प्रधान संख्याओं को कैसे ढूंढें? WPF बाइंडिंग का उपयोग करके दो कमांड पैरामीटर पास करना वहाँ ms-access में एक group_concat फ़ंक्शन है? गैर-स्थिर विधि के लिए एक स्थिर संदर्भ नहीं बना सकते जावास्क्रिप्ट चर परिभाषा: कॉमस बनाम सेमीकॉलन Google क्रोम / फ़ायरफ़ॉक्स कंसोल में एक्सटेंशन आउटपुट नहीं दिखता है विंडो सेवा के रूप में node.js कैसे स्थापित करें? सीमांकक का उपयोग करते हुए दो अक्षर के बीच में शामिल स्ट्रिंग खोजने के लिए नियमित अभिव्यक्ति

गतिविधि शीर्षक के बजाय लांचर के लिए अलग लेबल कैसे सेट करें?

इस सवाल से पहले पूछा गया है – लेकिन कोई संतोषजनक जवाब नहीं है! तो मैं इसे फिर से कोशिश कर रहा हूँ

मैं अपना आवेदन लांचर आइकन (जो कि शुरू स्क्रीन पर प्रदर्शित होता है!) देना चाहता हूं एक अलग, छोटा कैप्शन ऐसा प्रतीत होता है कि लांचर मुख्य गतिविधि के लेबल के बारे में मुख्य अनुभाग से इसके लेबल लेता है, जैसा कि यहां दिया गया है:

<activity android:name="MainActivity" android:label="@string/app_short_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> 

मैंने पहले से ही अपने ऐप के नाम पर स्ट्रिंग / एप_नाम का एक अलग, कम स्ट्रिंग संसाधन के लिए मूल संदर्भ बदल दिया है।

लेकिन – बड़ा लेकिन : यह भी निश्चित रूप से इस गतिविधि का डिफ़ॉल्ट शीर्षक बदलता है! और मैं ऐसा नहीं करना चाहता था, एक लंबा आवेदन नाम के लिए पर्याप्त जगह है! setTitle(int) पद्धति का उपयोग करते हुए लंबे समय से शीर्षक को फिर से सेट करना किसी भी अच्छा नहीं है, क्योंकि कम नाम उपयोगकर्ता को थोड़े समय के लिए दिखाई देगा, लेकिन नोटिस के लिए पर्याप्त समय होगा!

और – कृपया कस्टम शीर्षकबार को संदर्भित करके मेरे प्रश्न का उत्तर न दें … मैं उस लंबा रास्ता नहीं जाना चाहता, सिर्फ एक बेवकूफ स्ट्रिंग शीर्षक के कारण! बहुत कम प्रभाव के लिए एक कस्टम शीर्षक बार खींचने के लिए एक दर्द है!

क्या सिर्फ लॉन्चर को प्रदर्शित करने के लिए एक अलग स्ट्रिंग देने का कोई आसान तरीका नहीं है ? आपके उत्तर के लिए धन्यवाद!

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

वेब के समाधान से एकत्रित समाधान "गतिविधि शीर्षक के बजाय लांचर के लिए अलग लेबल कैसे सेट करें?"

जाहिर है <intent-filter> लेबल विशेषता हो सकती है यदि यह अनुपस्थित है तो लेबल को मूल घटक (या तो गतिविधि या एप्लिकेशन) से विरासत में मिला है। इसलिए इसका उपयोग करते हुए, आप लॉन्चर आइकन के लिए एक लेबल सेट कर सकते हैं, जबकि अभी भी अपने शीर्षक के साथ गतिविधि कर रहे हैं

ध्यान दें कि, जबकि यह emulators पर काम करता है, यह वास्तविक डिवाइस पर काम नहीं करेगा, क्योंकि यह प्रयोग किया जाता है कि लांचर कार्यान्वयन पर निर्भर करता है।

http://developer.android.com/guide/topics/manifest/intent-filter-element.html

 <activity android:name=".ui.HomeActivity" android:label="@string/title_home_activity" android:icon="@drawable/icon"> <intent-filter android:label="@string/app_name"> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> 

साइड नोट: <intent-filter> में आइकन विशेषता भी हो सकती है, परन्तु बेवजह यह गतिविधि में निर्दिष्ट आइकन को ओवरराइड नहीं करता है। यह आपके लिए महत्वपूर्ण हो सकता है यदि आप SDK 11+ में देशी एक्शनबार का उपयोग करने की योजना बना रहे हैं, जो गतिविधि पर निर्दिष्ट आइकन और लोगो का उपयोग करता है

जानकारी जोड़ा गया: लेबल गतिविधि से विरासत में मिली है और आवेदन नहीं है।

  <application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name=".StartActivity" android:label="@string/app_long_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> 

इस मामले में, app_long_name को लॉन्चर आइकन के साथ प्रदर्शित किया जाएगा, अगर हम उपरोक्त वर्णित अंदर लेबल नहीं डालते हैं।

मैं एक ही चीज़ की तलाश कर रहा था और यहाँ मेरे लिए क्या काम किया

 <activity android:name="MainActivity" android:label="@string/app_short_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> 

यह आपके एप्लिकेशन लॉन्चर आइकन को एक छोटा नाम देगा।

एप्लिकेशन बार में बड़ा नाम जोड़ने के लिए आपको बस जोड़ना होगा:

 this.setTitle(getResources().getString(R.string.app_name)); 

आपकी मुख्य गतिविधि जावा फ़ाइल में

मार्क रेनॉफ का समाधान मेरे लिए विफल रहता है (नेक्सस 4 और एंड्रॉइड 4.4)। शॉर्टकट्स का उपयोग करते समय यह विफल हो जाता है, शॉर्टकट ऐप नाम के बजाय मुख्य गतिविधि लेबल का उपयोग करते हैं। मैंने GMail और Google Keep जैसी कुछ ऐप्स को ठीक से काम किया लेकिन जब आप उन्हें खोलते हैं, तो मैं देखता हूं कि शीर्षक के बीच एक पल जैसे रिक्त है और शीर्षक दिखाई देता है (जो कि सेट-टाइटल () का उपयोग करके शीर्षक सेट करने से पहले एप नाम से चमकता है।

तो मैंने पाया सबसे अच्छा उपाय है :

एक शैली बनाएं जहां एक्शनबार शीर्षक / लेबल नहीं दिखाता है:

 <style name="NoActionBarTitle" parent="android:Theme.Holo.Light.DarkActionBar"> <item name="android:actionBarStyle">@style/NoActionBarTitle.ActionBar</item> </style> <style name="NoActionBarTitle.ActionBar" parent="@android:style/Widget.Holo.ActionBar"> <item name="android:displayOptions">showHome|useLogo</item> </style> 

मैं एक नेविगेशन ड्रॉवर और लोगो का उपयोग कर रहा हूं (क्योंकि मैं अपने ऐप के लिए लोगो और आइकन का उपयोग करता हूं)। आप जो भी उपयोग कर सकते हैं लेकिन शोटाइट का उपयोग न करें फिर AndroidManifest.xml में, मुख्य गतिविधि के लिए थीम सेट करें:

 <activity android:name="com.xx.xxx.MainActivity" android:logo="@drawable/ic_icon_padding" android:theme="@style/NoActionBarTitle"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> 

उसके बाद, मुख्य गतिविधि के ऑनक्रेट () विधि में, अपने एक्शन बार का शीर्षक सेट करें:

 getActionBar().setTitle(R.string.your_title); 

इसके बाद , आप कॉल कर सकते हैं:

 getActionBar().setDisplayShowTitleEnabled(true); 

मुश्किल लेकिन लायक

यह संभवत: आप जो करना चाहते हैं, वह संतुष्ट नहीं होगा, लेकिन आपने एक स्प्लैश स्क्रीन बनाने के बारे में सोचा है जो बहुत संक्षिप्त रूप से प्रदर्शित होता है (डिफ़ॉल्ट शीर्षक के साथ) और तब setTitle(int) का उपयोग करते हुए आपकी पसंद के शीर्षक के साथ अपनी नई वास्तविक "मुख्य" गतिविधि को लॉन्च करता है setTitle(int) विधि? मैंने यह देखने की कोशिश नहीं की है कि यह काम करता है, लेकिन यह एक सुखद काम पैदा कर सकता है, जो कि आप को हासिल करने की कोशिश कर रहे हैं, की एकदम से कम सहज प्रकृति का नहीं दिखता है।

मुझे इस समस्या के लिए एक वैकल्पिक हल मिला

manifest.xml

android:label में अपने ऐप का नाम लिखें android:label लॉन्चर (मुख्य) गतिविधि का android:label

यह आपके मुख्य गतिविधि के लेबल को ऐप लेबल की तरह ही बना देगा।

उसके बाद, अपने लॉन्चर (मुख्य) गतिविधि के onCreate() समारोह में इस कथन को लिखें

 if (getSupportActionBar() != null) { getSupportActionBar().setTitle("main activity label"); } 

यहां लेबल लिखें जो आप अपने लांचर (मुख्य) गतिविधि को देना चाहते हैं।

आप ऐसा कुछ कर सकते हैं:

 public class FooBar extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // change title requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); setContentView(R.layout.main); getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.my_title); } } 

आपको शीर्षक रखने के लिए एक कस्टम लेआउट बनाना होगा। यह इस मामले में ( my_title.xml कहा जाता है) के रूप में सरल हो सकता है:

 <?xml version="1.0" encoding="utf-8"?> <TextView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="foo bar"/> 

अपने AndroidManifest.xml फ़ाइल में आपको ऐप के लिए शीर्षक सेट करना होगा, जो लॉन्चर आइकन में दिखाया जा रहा है। आपकी गतिविधि के लिए आपको वहाँ शीर्षक निर्धारित करने की आवश्यकता नहीं है।

 The launcher actually shows android:label and android:icon for activity(ies) that declare <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> so application label is of no use.