मौजूदा कस्टम थीम के साथ XML में किसी गतिविधि के लिए शीर्षक पट्टी को कैसे छिपाएं


876

मैं अपनी कुछ गतिविधियों के लिए टाइटलबार को छिपाना चाहता हूं। समस्या यह है कि मैंने अपनी सभी गतिविधियों के लिए एक शैली लागू की है, इसलिए मैं बस विषय को निर्धारित नहीं कर सकता @android:style/Theme.NoTitleBar

मेरी शैली के लिए माता-पिता के रूप में NoTitleBar थीम का उपयोग करना मेरी सभी गतिविधियों से शीर्षक पट्टी को हटा देगा।

क्या मैं कोई शीर्षक शैली आइटम कहीं सेट कर सकता हूं?

जवाबों:


1065

इसे अपनी onCreate()विधि में करें ।

//Remove title bar
this.requestWindowFeature(Window.FEATURE_NO_TITLE);

//Remove notification bar
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

//set content view AFTER ABOVE sequence (to avoid crash)
this.setContentView(R.layout.your_layout_name_here); 

thisको संदर्भित करता है Activity


7
बहुत बढ़िया जवाब। हालाँकि, आपको दोनों करने की ज़रूरत नहीं है, अधिसूचना बार को हटाने से ओवरकिल हो सकता है।
जिम ब्लैकलर

209
कॉल करने के लिए इसे सेट करने से पहले रखना सुनिश्चित करें (R.id.x), अन्यथा यह दुर्घटनाग्रस्त हो जाएगा। कारण तुरंत मेरे लिए स्पष्ट नहीं था। 08-13 12: 47: 33.561 E / AndroidRuntime (9125): java.lang.RuntimeException: गतिविधि प्रारंभ करने में असमर्थ ComponentInfo {com.myapp / com.myapp.SplashActivity}} android.util.AndroidRuntimeException: requestFeature () सामग्री जोड़ने से पहले
mobibob

9
आप वास्तव में यह है कि जब requestWindowFeature का उपयोग कर (), एक शक्ति-पास अगर आप को जोड़ने के बाद इस लाइन पर अमल हो जाएगा उल्लेख करना चाहिए किसी भी सामग्री। और एक साइड नोट पर, XML विधि अधिक सुरक्षित है और यह आपके कोड से पृष्ठ संरचना को भी अलग करता है, (जो कि
XMLs

21
यह एपीआई 22 का उपयोग करके काम नहीं करता है। मैं अभी भी शीर्षक बार को ऐप बूट के रूप में देखता हूं।
user2966445

7
यह काम करता है यदि आपकी गतिविधि गतिविधि को बढ़ाती है न कि AppCompatActivity अर्थात आपकी कक्षा को सार्वजनिक वर्ग घोषित किया जाए क्योंकि MyActi गतिविधि {}
मनप्रीत सिंह ढिल्लों

523

आप अपने को संशोधित कर सकते हैं AndroidManifest.xml:

<activity android:name=".MainActivity"
          android:label="@string/app_name"
          android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen">

या उपयोग करें android:theme="@android:style/Theme.Black.NoTitleBar"यदि आपको फुलस्क्रीन गतिविधि की आवश्यकता नहीं है।

नोट: इससे पहले कि आप एक 'डिफ़ॉल्ट' दृश्य का उपयोग किया है, तो आप शायद यह भी माता पिता वर्ग से बदलना चाहिए AppCompatActivityकरने के लिए Activity


1
मुझे पता नहीं क्यों। मैंने केवल डिफ़ॉल्ट प्रोजेक्ट का उपयोग किया है और एक गतिविधि जोड़ी है। स्वतः पूर्णता मेरे काम नहीं है, लेकिन विषय है।
रेडैक्स

82
android:theme="@android:style/Theme.Black.NoTitleBar"जब तक आप गेम नहीं बना रहे हों, तब तक शायद यह अधिक उपयोगी है
क्रिस एस

7
या <style name = "AppTheme" parent = "android: Theme.Light.NoTitleBar" /> विषय को प्रकाश में लाने के लिए।
फर्नांडो JS

19
मुझे पता नहीं क्यों, लेकिन यह मेरे ऐप को क्रैश कर रहा है। कोई मदद?
अकेश्वर झा

12
@ अकेश्वर: आपको अपनी शैलियों के साथ गड़बड़ करनी पड़ सकती है। xml फ़ाइल। उदाहरण के लिए, <style name = "AppTheme" parent = "Theme.AppCompat.Light.DarkActionBar"> से <style name = "AppTheme" parent = "Theme.AppCompat.Light.No.ctionBar"> बदलें। यदि आप ऐसा करते हैं, तो आपको अपनी AndroidManifest.xml फ़ाइल बदलने की आवश्यकता नहीं है। (मैं दुर्घटना हो रही थी, भी, जब तक कि मैंने यह ठीक नहीं किया।)
ब्रिट क्लूसिंग

385

मैंने अब निम्नलिखित किया।

मैंने अपनी सामान्य शैली से सब कुछ प्राप्त करने वाली शैली घोषित की और फिर टाइटलबार को अक्षम कर दिया।

<style name="generalnotitle" parent="general">
    <item name="android:windowNoTitle">true</item>
</style>

अब मैं इस शैली को हर गतिविधि में सेट कर सकता हूं जिसमें मैं एप्लिकेशन बार को छिपाने के लिए आवेदन की विस्तृत शैली को लिखना चाहता हूं और अन्य सभी शैली को प्राप्त करना चाहता हूं, स्टाइल कोड में कोई दोहराव नहीं है।

शैली को किसी विशेष गतिविधि पर लागू AndroidManifest.xmlकरने के activityलिए, टैग में निम्नलिखित विशेषता खोलें और जोड़ें ;

<activity
    android:theme="@style/generalnotitle">

13
मेरा मानना ​​है कि उन्होंने "सामान्य" नामक एक शैली बनाई और वह इसे विस्तार दे रहे हैं। बस इसे अपने उपयोग के लिए हटा दें।
आरसीएल

7
प्रश्न का उत्तर देने के लिए +1, केवल इस प्रश्न पर अन्य उत्तरों की तरह अधिकांश परिणामों को प्राप्त करने के लिए सबसे स्पष्ट तरीके को निर्दिष्ट करने के बजाय। यह सिर्फ एक शर्म की बात है कि आपको सटीक जवाब पाने के लिए अपने ही सवाल का जवाब देना पड़ा ...
जूल्स

1
यह उत्तर सबसे अच्छा है। आप किसी भी शीर्षक पट्टी के साथ Android द्वारा प्रदान की गई किसी भी अन्य विषय का उपयोग कर सकते हैं। साझा करने के लिए बहुत बहुत धन्यवाद
नरेंद्र पाल

4
मुझे विश्वास है कि यह प्रोग्रामेटिक से अधिक सुरुचिपूर्ण समाधान है ।requestWindowFeature (Window.FEATURE_NO_TITLE); क्योंकि इस मामले में कुछ अभी भी शीर्षक का "निमिष" दिखाई
abovesun

1
ओपी सवाल का सबसे अच्छा जवाब :) लेकिन फिर भी मेरी गतिविधि (एपीआई 19) पर टाइटल बार नहीं है
1111161171159459134

166

मुझे पसंद नहीं है this.requestWindowFeature(Window.FEATURE_NO_TITLE); क्योंकि टाइटल बार संक्षिप्त रूप में दिखाई देता है, फिर गायब हो जाता है।

मुझे भी पसंद नहीं है android:theme="@android:style/Theme.NoTitleBar" क्योंकि मैंने 3.0+ होलो परिवर्तनों के सभी खो दिए हैं जो नए उपकरणों के उपयोगकर्ताओं को उपयोग करने के लिए मिल गए हैं। तो मैं इस समाधान के पार आया।

आपके रेस / वैल्यू फोल्डर में स्टाइल.एक्सएमएल नामक एक फाइल बनाते हैं (यदि यह पहले से मौजूद नहीं है)। उस फ़ाइल में निम्न कोड रखें:

<resources xmlns:android="http://schemas.android.com/apk/res/android">
    <style name="Theme.Default" parent="@android:style/Theme"></style>
    <style name="Theme.NoTitle" parent="@android:style/Theme.NoTitleBar"></style>
    <style name="Theme.FullScreen" parent="@android:style/Theme.NoTitleBar.Fullscreen"></style>
</resources>

अगला एक और स्टाइल के साथ एक Res / मान- v11 बनाएँ। xml फ़ाइल (एक बार फिर यह पहले से मौजूद हो सकती है)। उस फ़ाइल में निम्न कोड रखें:

<resources xmlns:android="http://schemas.android.com/apk/res/android">
    <style name="Theme.Default" parent="@android:style/Theme.Holo"></style>
    <style name="Theme.NoTitle" parent="@android:style/Theme.Holo.NoActionBar"></style>
    <style name="Theme.FullScreen" parent="@android:style/Theme.Holo.NoActionBar.Fullscreen"></style>
</resources>

और यदि आप 4.0+ को लक्षित कर रहे हैं, तो अभी तक एक और स्टाइल के साथ एक रेस / मान- v14 फ़ोल्डर बनाएं। xml फ़ाइल (हाँ यह पहले से ही हो सकता है)। उस फ़ाइल में निम्न कोड रखें:

<resources xmlns:android="http://schemas.android.com/apk/res/android">
    <style name="Theme.Default" parent="@android:style/Theme.Holo.Light"></style>
    <style name="Theme.NoTitle" parent="@android:style/Theme.Holo.Light.NoActionBar"></style>
    <style name="Theme.FullScreen" parent="@android:style/Theme.Holo.Light.NoActionBar.Fullscreen"></style>
</resources>

अंत में, बनाई गई इन सभी फाइलों के साथ, अपने AndroidManifiest.xml फ़ाइल को खोलें जिसे आप कोड जोड़ सकते हैं:

android:theme="@style/Theme.NoTitle"

यदि आप चाहते हैं कि गतिविधि का टैग आपके लिए संपूर्ण अनुप्रयोग पर लागू होने के लिए कोई शीर्षक या एप्लिकेशन टैग नहीं चाहिए।

अब आपके उपयोगकर्ता अपने डिवाइस संस्करण से जुड़े विषयों को स्क्रीन लेआउट के साथ प्राप्त करेंगे जो आप चाहते हैं।

PS का मान बदलने का android:theme="@style/Theme.FullScreen"एक ही प्रभाव होगा, लेकिन अधिसूचना बार को भी हटा दें।


आपने जो कुछ भी बताया है, उसके लिए वे ठीक काम करते हैं, लेकिन विषयों को बदलते समय चित्र सिकुड़ गए। इसलिए क्या करना है ???
अरुण

1
@ वरुण - इस पद्धति का उपयोग करने में मेरी कोई छवि नहीं है। चीरफाड़ से क्या मतलब है?
डेविन स्टीवर्ट

1
सर्वश्रेष्ठ उत्तर .. this.requestWindowFeature (Window.FEATURE_NO_TITLE); उपयुक्त नहीं है और <Item name = "android: windowNoTitle"> true </ item> खोई हुई मूल थीम..धन्यवाद @DevinStewart ..accept +1 आपकी व्याख्या के लिए :)
lynndragon

5
आह, मुझे मूर्ख! मैं ActionBarActivity का उपयोग कर रहा था, जिसका अर्थ यह नहीं है कि आप ACTIONBAR को हटाना चाहते हैं! एक साधारण गतिविधि या FragmentActivity में परिवर्तन इस अच्छे समाधान को एक आकर्षण की तरह काम करने की अनुमति देता है।
स्कॉट बिग्स

1
"दुर्भाग्य से आपका एप बंद हो गया है।"
क्रिस एलिन्सन

104

टाइटल बार को दो तरह से हटाया जा सकता है, जैसा कि डेवलपर Android पेज पर बताया गया है:

में manifest.xmlफ़ाइल:

  1. applicationयदि आप किसी ऐप में सभी गतिविधियों के लिए इसे हटाना चाहते हैं , तो निम्न जोड़ें :

    <application android:theme="@android:style/Theme.Black.NoTitleBar">
  2. या किसी विशेष गतिविधि के लिए:

    <activity android:theme="@android:style/Theme.Black.NoTitleBar">

15
Android का उपयोग करना बेहतर है: थीम = "@ android: style / Theme.DeviceDefault.NoActionBar.Fullscreen" के बजाय black.theme। डिवाइस को थीम को संभालने दें। लेकिन धन्यवाद, मैंने आपके दृष्टिकोण का उपयोग किया
Varand Pezeshkian

54

सही उत्तर शायद एक्शनबारिटी का विस्तार नहीं करना है, बल्कि केवल गतिविधि का विस्तार करना है


यदि आप अभी भी एक्शनबार गतिविधि का उपयोग करते हैं तो ऐसा लगता है कि यह काम कर रहा है:

@Override
protected void onCreate(Bundle savedInstanceState) {          
    super.onCreate(savedInstanceState);
    getSupportActionBar().hide(); //<< this
    setContentView(R.layout.activity_main);
}

लगता है कि यह भी काम करता है:

styles.xml:

   <style name="AppBaseTheme" parent="Theme.AppCompat.Light" >
          <item name="android:windowNoTitle">true</item>   <!-- //this -->     
   </style>

जैसा स्कॉट स्कॉट्स ने लिखा था मैं वैसा ही कर सकता था। इस तरह के काम करता है। इसके अलावा कोई विषय नहीं है। मेरा मतलब है कि सेटिंग मेनू की पृष्ठभूमि पारदर्शी है:

बस बदल दो

public class MainActivity extends ActionBarActivity {

गतिविधि या FragmentActivity के लिए

public class MainActivity extends Activity  {

हालाँकि, मैं इसे सामग्री डिज़ाइन का उपयोग करके काफी अच्छा लग सकता था और एक्शनबार को नहीं हटा सकता: https://gist.github.com/shimondoodkin/86e56b3351b704a05e53

  1. एप्लिकेशन का आइकन सेट करें
  2. डिजाइन से मैच करने के लिए एक्शन बार के रंग सेट करें।
  3. सेटिंग मेनू में आइकन सेट करें
  4. अधिक आइकन जोड़ें (शीर्ष पर बटन)

यह सामग्री डिजाइन संगतता एक्शनबार स्टाइल के उदाहरण से है।


4
ActionBarActivity को एक्टिविटी में बदलना मेरे लिए ट्रिक था!
DritanX

44

मेरे लिए क्या काम करता है:

1- स्टाइल में। xml:

 <style name="generalnotitle" parent="Theme.AppCompat.Light" >
          <item name="android:windowNoTitle">true</item>   <!-- //this -->     
   </style>

2- मेनएक्टिविटी में

@Override
protected void onCreate(Bundle savedInstanceState) {          
    super.onCreate(savedInstanceState);
    getSupportActionBar().hide(); //<< this
    setContentView(R.layout.activity_main);
}
  1. अभिव्यक्ति में शैली विरासत में मिली:

    <activity android:name=".MainActivity" android:theme="@style/generalnotitle">

जैसा ऊपर वर्णित है, कभी-कभी यह xml से काम नहीं करता है। मुझे नहीं पता कि वास्तव में, मैं पूरी तरह से निश्चित नहीं हूं, लेकिन getSupportActionBar().hide();
ऑनक्रिएट

43

यदि आप this.requestWindowFeature(Window.FEATURE_NO_TITLE)उपयोगकर्ता का उपयोग करते हैं, तब भी गतिविधि शुरू होने के बाद लॉन्च एनीमेशन के दौरान बस एक पल के लिए शीर्षक बार देख पाएंगे onCreate। यदि आप @android:style/Theme.Black.NoTitleBarनीचे दिखाए अनुसार उपयोग करते हैं तो टाइटल बार लॉन्च एनीमेशन के दौरान नहीं दिखाया जाएगा।

<activity 
    android:name=".MainActivity" 
    android:label="My App"
    android:theme="@android:style/Theme.Black.NoTitleBar"
    android:screenOrientation="portrait">

उपरोक्त उदाहरण स्पष्ट रूप से आपके मौजूदा एप्लिकेशन थीम को ओवरराइड करेगा, यदि आपके पास मौजूदा थीम है तो <item name="android:windowNoTitle">true</item>इसे जोड़ें ।


मेरी गतिविधि @android के साथ एकल इंस्टेंस है: शैली / थीम ।Backack.NoTitleBar लेकिन इस कोड का उपयोग करते हुए कार्य तब किया जाएगा जब गतिविधि पहली बार बनाई गई थी जैसा कि आप सिंगलइंस्टेंस गतिविधि के रूप में जानते हैं, फिर से नहीं बनाया गया है इसलिए यह केवल अनुपलब्ध विधि का उपयोग करें लेकिन अब मेरी समस्या तब है जब गतिविधि दिखाएँ की this.Here मेरे सवाल है यह सिर्फ स्थिति पट्टी 4 दूसरा .कैसे के लिए मैं बाहर निकल सकते हैं इस शो के लिंक है stackoverflow.com/questions/9308767/...
Herry

29

जब मैंने उन सभी उच्च उत्कीर्ण जवाबों का उपयोग करने की कोशिश की तो मेरा ऐप हमेशा दुर्घटनाग्रस्त हो गया। (मुझे लगता है कि यह "@android: style" के साथ कुछ करना है?)

मेरे लिए सबसे अच्छा समाधान निम्नलिखित का उपयोग करना था:

android:theme="@style/Theme.AppCompat.NoActionBar"

अब कोई हेडर / टाइटल बार नहीं। बस इसे <application>...</application>या इसके <activity>...</activity>आधार पर रखें अगर आप (इसे) पूरे ऐप में या केवल एक विशिष्ट गतिविधि चाहते हैं।


यह सबसे अच्छा तरीका है (या एकमात्र तरीका?) यदि एप्लिकेशन "AppCompatActivity का विस्तार करता है"!
फेरेराजी

17

नीचे एक थीम बनाएं।

 <!-- Variation on the Light theme that turns off the title -->
<style name="MyTheme" parent="android:style/Theme.Black">
    <item name="android:windowNoTitle">true</item>
</style>

16

जोड़ना

<item name="android:windowNoTitle">true</item>

अंदर AppTheme (styl.xml)



14

AppThemeयदि आप परिभाषा से प्रतिस्थापित करते हैं तो आपको स्टाइल में स्टाइल बदलने की आवश्यकता हैDarkActionBar

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">

सेवा NoActionBar

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">

AppTheme AndroidManifast.xml में परिभाषित किया गया है


13

के लिये AppCompat , निम्नलिखित समाधान मेरे लिए काम किया:

अपने styles.xmlऔर सेट में कोई एक्शन बार के साथ नई थीम शैली जोड़ें parent="Theme.AppCompat.NoActionBar"

<style name="SplashTheme" parent="Theme.AppCompat.NoActionBar">

    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimary</item>
    <item name="colorAccent">@color/colorAccent</item>
    <item name="android:windowBackground">@color/colorPrimary</item>

</style>


अब अपनी स्प्लैश स्क्रीन गतिविधि में उसी थीम शैली को लागू करें androidManifest.xml

<activity
        android:name=".ActivityName"
        android:theme="@style/SplashTheme"> // apply splash them here 

        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
</activity>

यहाँ परिणाम है:

यहां छवि विवरण दर्ज करें


11

आप इस कोड का उपयोग अपनी जावा फाइल में कर सकते हैं

अपना दृश्य सेट करने या लोड करने से पहले इस पंक्ति को जोड़ें

requestWindowFeature(Window.FEATURE_NO_TITLE); 
setContentView(R.layout.activity_main);

11

अपनी onCreateविधि में, निम्नलिखित स्निपेट का उपयोग करें:

this.requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.activity_main);

एप्लिकेशन शीर्षक के साथ शुरू होता है और यह छुपाता है, यह बिना शीर्षक वाले ऐप को दिखाता है
Bachask8

10

आपके द्वारा उपयोग की जाने वाली थीम के लिए उन दोनों को जोड़ें:

    <item name="windowActionBar">false</item>
    <item name="android:windowNoTitle">true</item>

"दुर्भाग्य से आपका एप बंद हो गया है।"
क्रिस एलिन्सन

<item name="windowActionBar">false</item>दुर्घटना के लिए आवेदन का कारण बनता है। यह वही हो सकता है जो @ChrisAllinson का अर्थ है
मुबाशर

पुष्टि नहीं कर सकता। मेरे लिए ठीक काम करता है।
एंड्रॉयड डेवलपर

10

इस शैली को अपनी शैली में जोड़ें। xml फ़ाइल

 <style name="AppTheme.NoActionBar">
     <item name="windowActionBar">false</item>
     <item name="windowNoTitle">true</item>
 </style>

उसके बाद इस स्टाइल का नाम आपके androidManifest.xml में पर्टिकुलर एक्टिविटी में दिया गया है जिसमें आप नीचे की तरह टाइटलबार नहीं देखना चाहते हैं।

<activity android:name=".youractivityname"
     android:theme="@style/AppTheme.NoActionBar">
</activity>

आप android:कोड के अपने पहले ब्लॉक में नामों से पहले उपसर्ग भूल गए :)
Stam Kaly

8

मैं एक समर्थन विजेट टूलबार v7 का उपयोग कर रहा हूं। इसलिए, शीर्षक को हटाने या छिपाने में सक्षम होने के लिए हमें यह लिखने की आवश्यकता है।

Toolbar myToolbar = (Toolbar) findViewById(R.id.my_toolbar);
setSupportActionBar(myToolbar);

//Remove¡ing title bar
getSupportActionBar().setDisplayShowTitleEnabled(false);

सही जवाब।
आशा जॉर्ज

7

या यदि आप किसी भी बिंदु पर शीर्षक पट्टी को छिपाना / दिखाना चाहते हैं:

private void toggleFullscreen(boolean fullscreen)
{
    WindowManager.LayoutParams attrs = getWindow().getAttributes();
    if (fullscreen)
    {
        attrs.flags |= WindowManager.LayoutParams.FLAG_FULLSCREEN;
    }
    else
    {
        attrs.flags &= ~WindowManager.LayoutParams.FLAG_FULLSCREEN;
    }
    getWindow().setAttributes(attrs);
}

6

मेरे मामले में, यदि आप एंड्रॉइड स्टूडियो 2.1 का उपयोग कर रहे हैं, और आपका संकलन एसडीके संस्करण 6.0 है, तो बस अपनी मेनिफ़ेस्ट.एक्सएमएल फ़ाइल पर जाएं, और निम्नलिखित कोड को बदल दें:

यहाँ कोड है:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.lesterxu.testapp2">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/Theme.AppCompat.NoActionBar">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

और यहाँ स्निप शूट है (हाइलाइट कोड देखें): यहां छवि विवरण दर्ज करें


एसओ में आपका स्वागत है। कृपया अपने कोड की छवि पोस्ट करने के बजाय अपना कोड सीधे SO को पोस्ट करें।
रिचर्ड एरिकसन

6

इससे मेरी समस्या हल हो गई

मेरी गतिविधि प्रकट करने में:

<application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".SplashScreen">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

"AppTheme" नाम के तहत शैली में:

<resources>

    <!-- Base application theme. -->
    <style name="AppTheme"
        parent="Theme.AppCompat.Light.NoActionBar">
        **<item name="windowActionBar">false</item>
        <item name="android:windowNoTitle">true</item>**
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
    </style>

</resources>

6

टाइटल और एक्शन बार दोनों को छिपाने के लिए मैंने ऐसा किया:

मैनिफेस्ट की गतिविधि टैग में:

android:theme="@style/AppTheme.NoActionBar"

गतिविधि में। सेट से पहले जावा देखें:

this.requestWindowFeature(Window.FEATURE_NO_TITLE);
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

अर्थात,

// शीर्षक पट्टी निकालें

this.requestWindowFeature (Window.FEATURE_NO_TITLE);

// अधिसूचना बार निकालें

it.getWindow ()। setFlags (WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

नोट : आपको इन पंक्तियों को पहले रखना होगाsetContentView


मुझे जावा में या एंड्रॉइड ऐप बनाने में इतना अनुभव नहीं है, इसलिए आपकी टिप्पणी कि कोड की उन पंक्तियों को सेटऑन्टेंट व्यू से पहले स्थित होना चाहिए, जिन्होंने वास्तव में मदद की है! धन्यवाद!
काइल वैन तिल

5

पहला जवाब उभयचर है। यहाँ मेरी व्याख्या है: जोड़ें:

this.requestWindowFeature(Window.FEATURE_NO_TITLE);
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);

oncreate () विधि में।

इससे पहले:

super.onCreate(savedInstanceState);
setContentView(R.layout.activity_start);

(सेटकोन्ट व्यू के ठीक पहले नहीं) अगर ऐसा नहीं करेंगे तो आपको बल मिल जाएगा। इस जवाब को +1 करें।


4

मुझे दो कारण मिले कि यह त्रुटि क्यों हो सकती है।

एक। खिड़की के झंडे पहले से ही अंदर सेट हैं super.onCreate(savedInstanceState);जिस स्थिति में आप निम्नलिखित आदेशों का उपयोग करना चाहते हैं:

this.requestWindowFeature(Window.FEATURE_NO_TITLE);
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);      

super.onCreate(savedInstanceState);

दो। आपके पास TitleBar के अंदर बैक / अप बटन है, जिसका अर्थ है कि वर्तमान गतिविधि किसी अन्य गतिविधि का एक पदानुक्रमित बच्चा है, जिस स्थिति में आप onCreateविधि के अंदर से इस पंक्ति को टिप्पणी करना या निकालना चाह सकते हैं ।

getActionBar().setDisplayHomeAsUpEnabled(true);

धन्यवाद, इसने मुझे बिना किसी बदलाव के नॉटीटल और फुलस्क्रीन सेट करने में मदद की
मोहसिन

4

इस तरह पूरा कोड दिखता है। Android.view.Window के आयात पर ध्यान दें।

package com.hoshan.tarik.test;

import android.app.Activity;
import android.os.Bundle;
import android.view.Window;

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.activity_main);
    }
}

4

AndroidManifest.xml पर अपनी गतिविधि में थीम @ style / Theme.AppCompat.Light.NoActionBar इस तरह जोड़ें

<activity
        android:name=".activities.MainActivity"
        android:theme="@style/Theme.AppCompat.Light.NoActionBar">
    </activity>

3

यदि आप यूएवी और डौग पॉल के उपयोगकर्ताओं को कहते हैं, तो आपको यह ध्यान रखना होगा कि सेटकॉन्टेंट व्यू को कॉल करने से पहले विंडो विशेषताओं को सेट किया जाना चाहिए। यदि नहीं, तो आपको एक अपवाद मिलेगा।


3

मैनिफ़ेस्ट फ़ाइल में जोड़ें,

  android:theme="@android:style/Theme.Translucent.NoTitleBar"

उर जावा फ़ाइल में निम्न पंक्ति जोड़ें,

  this.requestWindowFeature(Window.FEATURE_NO_TITLE);

3

मैं Android ज़ामरीन का उपयोग कर रहा हूं और यह मेरे लिए काम कर रहा है।

SupportActionBar.Hide();
SetContentView(Resource.Layout.activity_main);
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.