गतिविधि बनने से पहले एक्शन बार को कैसे छिपाएं, और फिर इसे फिर से दिखाएं?


243

मुझे अपने छत्ते ऐप में स्प्लैश स्क्रीन लागू करने की आवश्यकता है। मैं दिखावा दिखाने के लिए गतिविधि के onCreate में इस कोड का उपयोग करता हूं:

setContentView(R.layout.splash);
getActionBar().hide();

और यह कोड कुछ समय बाद मुख्य UI दिखाने के लिए:

setContentView(R.layout.main);
getActionBar().show();

लेकिन इससे पहले कि onCreate कहा जाता है और छप दिखाई देता है, जब कार्रवाई बार दिखाया जाता है तो बहुत कम समय होता है।

मैं एक्शन बार को कैसे अदृश्य बना सकता हूं?

मैंने एक्शन बार के बिना गतिविधि पर थीम लागू करने की कोशिश की:

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

लेकिन उस मामले में getActionBar () हमेशा शून्य रहता है और मुझे इसे फिर से दिखाने का कोई तरीका नहीं मिला।


जवाबों:


335

सेटिंग android:windowActionBar="false"सही मायने में ActionBar को निष्क्रिय कर देती है लेकिन फिर, जैसा कि आप कहते हैं, getActionBar();अशक्त है। इसके द्वारा हल किया जाता है:

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    getWindow().requestFeature(Window.FEATURE_ACTION_BAR);
    getActionBar().hide();

    setContentView(R.layout.splash); // be sure you call this AFTER requestFeature

यह ActionBar बनाता है और प्रदर्शित होने का मौका मिलने से पहले इसे तुरंत छिपा देता है।

लेकिन अब एक और समस्या है। windowActionBar="false"विषयवस्तु में डालने के बाद , एक्टिविटी एक्शनबार के बजाय अपना सामान्य विंडो टाइटल खींचती है।
अगर हम कुछ *.NoTitleBarस्टॉक थीम का उपयोग करके इससे बचने की कोशिश करते हैं या हम <item name="android:windowNoTitle">true</item>अपनी खुद की थीम में रखने की कोशिश करते हैं , तो यह काम नहीं करेगा।
कारण यह है कि ActionBar खुद को प्रदर्शित करने के लिए विंडो शीर्षक पर निर्भर करता है - यही ActionBar एक परिवर्तित विंडो शीर्षक है।
तो जो तरकीब हमारी मदद कर सकती है वह है हमारी गतिविधि विषय xml में एक और बात जोड़ना:

<item name="android:windowActionBar">false</item>
<item name="android:windowTitleSize">0dp</item>

यह विंडो का शीर्षक शून्य ऊंचाई के साथ बना देगा, इस प्रकार व्यावहारिक रूप से अदृश्य हो जाएगा।

आपके मामले में, छप स्क्रीन प्रदर्शित करने के बाद आप बस कॉल कर सकते हैं

setContentView(R.layout.main);
getActionBar().show();

और आप कर रहे हैं यह गतिविधि न तो एक्शनबार झिलमिलाहट के साथ शुरू होगी, न ही विंडो शीर्षक दिखाएगा।

ADDON: यदि आप एक्शनबार को कई बार दिखाते और छिपाते हैं तो शायद आपने देखा है कि पहला शो एनिमेटेड नहीं है । तब से दिखाना और छिपाना एनिमेटेड हैं। यदि आप पहले दिखाना चाहते हैं तो आप इसका उपयोग कर सकते हैं:

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    requestWindowFeature(Window.FEATURE_ACTION_BAR);

    // delaying the hiding of the ActionBar
    Handler h = new Handler();
    h.post(new Runnable() {     
        @Override
        public void run() {
            getActionBar().hide();
        }
    });

उसी चीज से हासिल किया जा सकता है:

protected void onPostResume() {
    super.onPostResume();
    getActionBar().hide();

लेकिन यह जाँचने के लिए कुछ अतिरिक्त तर्क की आवश्यकता हो सकती है कि क्या यह गतिविधि का पहला प्रदर्शन है।

विचार यह है कि ActionBar के छिपने में थोड़ी देरी हो। एक तरह से हमने एक्शनबार दिखाया, लेकिन फिर उसे तुरंत छिपा दिया। इस प्रकार हम पहले गैर-एनिमेटेड शो से आगे जाते हैं और अगले शो को दूसरा माना जाएगा, इस प्रकार यह एनिमेटेड होगा।

जैसा कि आप अनुमान लगा सकते हैं कि एक मौका है कि ActionBar को विलंबित ऑपरेशन द्वारा छिपाए जाने से पहले देखा जा सकता है। यह वास्तव में मामला है। ज्यादातर समय कुछ भी नहीं देखा जाता है, लेकिन अभी तक, एक बार में, आप विभाजित सेकंड के लिए एक्शनबार झिलमिलाहट देख सकते हैं।

किसी भी मामले में यह एक सुंदर समाधान नहीं है, इसलिए मैं किसी भी सुझाव का स्वागत करता हूं।

इसके अलावा v7 समर्थन ActionBar उपयोगकर्ता के लिए, कोड हो जाएगा:

getWindow().requestFeature(Window.FEATURE_ACTION_BAR);
getSupportActionBar().hide();

2
@newton_guima हाँ, यह काम करता है। बस का उपयोग करने के लिए याद रखेंRequestWindowFeature (Window.FEATURE_ACTION_BAR)
scana

@ क्विकर - आप यह सब कैसे काम करते हैं setTheme? क्योंकि मैनिफेस्ट से थीम सेट करने पर आपका उत्तर बहुत अच्छा काम करता है, लेकिन अगर मैं इसे onCreateकरता हूं (मेरे मामले में विषय डार्क थीम के लिए वरीयता पर निर्भर करता है) तो डिफ़ॉल्ट होलो एक्शन बार मेरे थीम में सेट होने से पहले चमकता है वैसे भी। लेकिन शायद यह एक और पूर्ण एसओ प्रश्न के लायक है।
डेंटेक्स

2
@Cleric धन्यवाद। मैंने अपने मुद्दे android:theme="@android:style/Theme.NoTitleBar"को मैनिफेस्ट में और फिर setTheme(R.style.MyTheme)मुख्य गतिविधि में हल किया onCreate; यह सुनिश्चित करता है (एंड्रॉइड 4+ में) ActionBarमैं अपने विषय में परिभाषित किए जाने से पहले डिफ़ॉल्ट होलो के फ्लैश से बचता हूं (मैं इसे हल करने के लिए एक रास्ता ढूंढ रहा हूं; मुझे वास्तव में किसी छप-स्क्रीन की आवश्यकता नहीं है)।
डेंटेक्स

2
मैं फोन getSupportActionBar().hide();के बाद getWindow().requestFeature(Window.FEATURE_ACTION_BAR);और सब कुछ एक एनपीई के साथ चल रही है। कोई विचार? के साथ समस्या है Theme.AppCompat?
loeschg

1
@loeschg: मुझे भी यही समस्या थी और यह समाधान मिला: stackoverflow.com/a/20315456/3514976
nonzaprej

50

कार्रवाई पट्टी को छिपाने के लिए अपनी .class फ़ाइल में इस सरल कोड का उपयोग करना

getSupportActionBar().hide();

37

यदि आप ActionBarSherlock का उपयोग कर रहे हैं, तो अपनी गतिविधि में Theme.Sherlock.NoActionBar थीम का उपयोग करें

<activity 
    android:name=".SplashScreenActivity"
    android:theme="@style/Theme.Sherlock.NoActionBar">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>

1
वही मानक Android 3+ एक्शनबार (कोई शर्लक) के लिए लागू होता है <activity android:theme="@android:style/Theme.NoActionBar">:।
एलेक्स सेमीनेक

सही समाधान :) धन्यवाद।
एलिकनबैट

7
मैं यह नहीं देखता कि यह इल्या के सवाल का जवाब कैसे है। थीम सेट करने Theme.Sherlock.NoActionBarका मतलब होगा कॉलिंग getActionBar()या getSupportActionBar()(बाद में एक्शन बार दिखाने के लिए) शून्य हो जाना ...
आदिल हुसैन

@AlexSemeniuk जब मैं प्रकट में उस लाइन का उपयोग करता हूं, तो मुझे यह त्रुटि मिलती है:error: Error: No resource found that matches the given name (at 'theme' with value '@android:style/ Theme.NoActionBar').
Si8

1
@ SiKni8 क्या आप वाकई अपने आवेदन के लिए API13 + पुस्तकालय का उपयोग कर रहे हैं?
एलेक्स सेमेनिएक

19

दो शैलियों बनाएँ:

<style name="AppThemeNoBar" parent="Theme.AppCompat.Light">
     <item name="android:windowNoTitle">true</item>
</style>

<style name="AppThemeBar" parent="Theme.AppCompat.Light">
    <item name="android:windowNoTitle">false</item>
</style>

AppThemeNoBar को एप्लिकेशन थीम और AppThemeBar के रूप में उस गतिविधि पर सेट करें जहां आप ActionBar दिखाना चाहते हैं। दो शैलियों का उपयोग करके आप एक्शन बार नहीं देख पाएंगे, जबकि दृश्य लोड हो रहे हैं।

इस लिंक की जाँच करें Android: लोड करते समय एक्शन बार छिपाएँ


आखिरकार! मेरे लिए काम किया। धन्यवाद। :)
डोहका

यह AppCompat के साथ Android 2.3.3 पर काम नहीं करता है। ActionBar दिखाया गया है। हालाँकि, यह किटकैट पर काम करता है।
यार

17

नमस्ते मैं 2 विषयों का उपयोग करके एक सरल समाधान है

  1. स्पलैश स्क्रीन थीम (इसे प्रकट में जोड़ें):

    <style name="SplashTheme" parent="@android:style/Theme.Holo.NoActionBar"> <item name="android:windowBackground">@color/red</item> </style>

  2. सामान्य विषय (इसे अपनी गतिविधि में सेट करेंथीम (R.style.Theme)):

    <style name="Theme" parent="@style/Theme.Holo"> <item name="android:windowBackground">@color/blue</item> </style>

एसडीके 10 का समर्थन करने के लिए:

@Override    
public void onCreate(Bundle savedInstanceState) {

    setTheme(R.style.Theme);      
    super.onCreate(savedInstanceState);

      ...........
      ...........
}

15

मैं एंड्रॉइड 2.2 पर एक्शन बार को छिपाने की भी कोशिश कर रहा था, लेकिन इनमें से किसी भी समाधान ने काम नहीं किया। सब कुछ एक दुर्घटना के साथ समाप्त होता है। मैंने DDMS LOg को चेक किया, यह मुझे 'Theme.AppCompat' का उपयोग करने के लिए कह रहा था। अंतिम बार मैंने android:theme="@android:style/Theme.Holo.Light.NoActionBar"लाइन को बदलने के लिए समस्या का समाधान किया था

में android:theme="@style/Theme.AppCompat.NoActionBar"और यह काम किया, लेकिन इंटरफ़ेस अंधेरा था।

तब मैंने कोशिश की android:theme="@style/Theme.AppCompat.Light.NoActionBar"और आखिरकार मुझे वही मिला जो मैं चाहता था।

उसके बाद जब मैंने डेवलपर साइट पर 'AppCompat' के बारे में खोजा तो मुझे यह मिला।

इसलिए मुझे लगता है कि Android 2.2 के लिए समाधान है

<activity
    android:name=".MainActivity"
    android:theme="@style/Theme.AppCompat.Light.NoActionBar" >
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>

और माफ़ कीजियेगा मेरी खराब अंग्रेजी की तरह हमेशा।


12

मेरे लिए सबसे अच्छा परिणाम ThemeNoTitleBar और लांचर के रूप में सामग्री के बिना एक गतिविधि बनाना था। फिर यह गतिविधि सीधे दूसरे को बुलाती है।

बेशक, यदि आप चाहते हैं कि आप स्प्लैश गतिविधि में सामग्री जोड़ सकते हैं, लेकिन मेरे मामले में मैं सीधे आवेदन दिखाना चाहता था।

मैनिफ़ेस्ट:

<activity
        android:name="com.package.SplashActivity"
        android:theme="@android:style/Theme.Black.NoTitleBar" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

गतिविधि:

public class SplashActivity extends Activity{

@Override
protected void onCreate(Bundle savedInstanceState){
    super.onCreate(savedInstanceState);

    //start StartActivity
    Intent intent = new Intent(this, StartActivity.class);
    startActivity(intent);
    finish();
}

}


9

यदि आप Activityएक स्प्लैश स्क्रीन का उपयोग करते हैं, तो आप इसका उपयोग कर सकते हैंSherlockActionBar

getSupportActionBar().hide();

छप स्क्रीन के बाद आप इसे फिर से दिखा सकते हैं ...

getSupportActionBar().show();

यह ActionBarएंड्रॉइड के मूल निवासी के साथ समान होना चाहिए ।


6

@ समाधान समाधान काम करता है। लेकिन यह कुछ गोगल्स देशी ऐप्स के साथ एक मुद्दा भी प्रतीत होता है: गोगल्स, प्ले स्टोर, टॉक। इसके अलावा अन्य बड़े ऐप जैसे स्काइप।

संपादित करें : Bellow समाधान ने मुझे api <4.0 पर कार्रवाई के लिए समस्या दे दी है <4.0, कारण सेट किया जा रहा है

अपने आवेदन या गतिविधि टैग में अपने प्रकट में निम्नलिखित जोड़ें:

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

और फिर अपनी मुख्य गतिविधि में:

    // Set theme
    setTheme(R.style.YOUR_THEME);
    getSupportActionBar().setTitle(R.string.title);

    // Start regular onCreate()
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);


6

2015, AppCompat विषय के साथ समर्थन v7 पुस्तकालय का उपयोग करके, अपनी गतिविधि के लिए इस विषय को सेट करें।

<style name="AppTheme.AppStyled" parent="Theme.AppCompat.Light.DarkActionBar">
    <item name="colorPrimaryDark">@color/md_indigo_100</item>
    <item name="colorPrimary">@color/md_indigo_500</item>
    <item name="colorAccent">@color/md_red_500</item>
    <item name="android:textColorPrimary">@color/md_white_1000</item>
    <item name="android:textColor">@color/md_purple_500</item>
    <item name="android:textStyle">bold</item>
    <item name="windowNoTitle">true</item>
    <item name="windowActionBar">false</item>
</style>

4

के लिए Splashscreenआप में इस लाइन का उपयोग करना चाहिए manifestऔर उपयोग नहीं करतेgetActionBar()

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

और एक बार जब स्पलैश नीचे Activityमुख्य Activityउपयोग में समाप्त हो गया है या कुछ भी नहीं है

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

यह वास्तव में काम करता है यदि आप छप पेज के लिए एक अलग विषय का उपयोग करते हैं तो आपके आवेदन का मुख्य पृष्ठ। बस एंड्रॉइड का उपयोग करें: मुख्य गतिविधि (आपकी स्प्लैश स्क्रीन) और आपके एप्लिकेशन की पहली गतिविधि के लिए थीम @ "स्टाइल / म्यूटेमे" जो कि थीम को अलग करने वाली स्प्लैश स्क्रीन नहीं है।
थैंक्स मिस्टर

1
यह वर्तमान एपीआई स्तरों पर एक त्रुटि देता है: "गुण एंड्रॉइड नामस्थान उपसर्ग को याद कर रहा है।" <item android:name="android:windowActionBar">true</item>इस त्रुटि से छुटकारा मिलता है, लेकिन मुझे नहीं पता कि यह अभी भी काम करता है या नहीं।
लार्स

3

यह कोशिश करो, यह मेरे लिए काम करता है:

नीचे गतिविधि शीर्षक शीर्षक से छुटकारा मिलता है

 requestWindowFeature(Window.FEATURE_NO_TITLE);

नीचे गतिविधि पूर्ण स्क्रीन पर जाने के लिए अधिसूचना बार को समाप्त करता है

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

(नीचे पूर्ण उदाहरण) ध्यान दें: हमारी गतिविधि का सामग्री दृश्य सेट करने से पहले इन विधियों को बुलाया गया था

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        // Sets Application to full screen by removing action bar
        requestWindowFeature(Window.FEATURE_NO_TITLE);    
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 
        WindowManager.LayoutParams.FLAG_FULLSCREEN);

        setContentView(R.layout.activity_main); 

        // without this check, we would create a new fragment at each orientation change!
        if (null == savedInstanceState)
            createFragment();
    }

कृपया स्पष्ट करें कि यह क्यों काम करता है या आपको क्यों लगता है कि यह काम करना चाहिए। बस पेस्ट करने वाला कोड पूर्ण उत्तर के लिए नहीं बनता है।
क्रिस

@ क्रिस, ओह, मैं देख रहा हूँ तुम क्या मतलब है, धन्यवाद!
user3862873 4

3

यह
आपके प्रकटन में इसे जोड़ने में मददगार हो सकता है

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

चियर्स


इतने पुराने सवाल में शीर्ष उत्तर के रूप में महान के रूप में कुछ पोस्ट क्यों नहीं?
gsamaras

'शीर्ष उत्तर' ने मेरी मदद नहीं की, इसलिए इस उत्तर के साथ खुद को पाया और इसे यहां पोस्ट किया।
ralphgabb

2

सभी उपलब्ध विकल्पों को पढ़ने के बाद मुझे जो सबसे अच्छा तरीका लगता है वह है एक्शनबार के बिना मुख्य विषय निर्धारित करना और फिर सभी गतिविधि के माता-पिता में कोड में MyTheme सेट करना।

मैनिफ़ेस्ट:

<application
...
        android:theme="@android:style/Theme.Holo.Light.NoActionBar"
...>

BaseActivity:

public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setTheme(R.style.GreenHoloTheme);
}

आवेदन शुरू होने पर एक्शनबार से बचने के लिए यह रास्ता मेरी मदद करता है!


1

पहले से ही पोस्ट किए गए समाधान साइडफैक्ट के साथ आए थे, कि पहले .show () कॉल ने मेरे लिए एक्शनबार को चेतन नहीं किया था। मुझे एक और अच्छा समाधान मिला, जिसने तय किया कि:

एक पारदर्शी ड्राएबल बनाएं - ऐसा कुछ:

<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <solid
       android:color="#00000000" />
</shape>

वास्तविक एक्शनबार पृष्ठभूमि को एक अदृश्य कस्टम दृश्य पर सेट करें जिसे आप एक्शनबार पर सेट करते हैं:

getSupportActionBar().setCustomView(R.layout.actionbar_custom_layout);
      getSupportActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM,
              ActionBar.DISPLAY_SHOW_CUSTOM | ActionBar.DISPLAY_SHOW_HOME | ActionBar.DISPLAY_SHOW_TITLE);

ऑनक्रीट में एक्शनबार के लिए पारदर्शी पृष्ठभूमि सेट करें:

getSupportActionBar().setBackgroundDrawable(getResources().getDrawable(R.drawable.background_transparent));

प्रसारक: एक्शनबार को तुरंत ऑनक्रीट में न छिपाएं, लेकिन बाद में थोड़ी देरी के साथ - जैसे कि लेआउट के साथ समाप्त हो गया है:

getWindow().getDecorView().getViewTreeObserver().addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
                @Override
                public void onGlobalLayout() {
                    getSupportActionBar().hide();
                }
            });

आपके पहले .show () कॉल सेट पर कस्टम दृश्य दिखाई दे रहा है:

_actionbarRoot.setVisibility(View.VISIBLE);
getSupportActionBar().show();

1

मामले में आपके पास अशक्त है क्योंकि आप समर्थन पुस्तकालय का उपयोग कर रहे हैं , इसके बजाय getActionBar()आपको कॉल करने की आवश्यकता है getSupportActionBar()


1

बस इसे OnCreate फ़ंक्शन में अपने MainActivity में जोड़ें।

val actionBar = supportActionBar?.apply { hide() }

यह androidx पर काम कर रहा है। बस के बाद जोड़ें setContentView () इस पंक्तिsupportActionBar?.apply { hide() }
Black_Zerg

0

अपनी स्प्लैश स्क्रीन को एक अलग गतिविधि में रखें और इसे प्रदर्शित करने के लिए startActivityForResultअपनी मुख्य गतिविधि की onCreateविधि का उपयोग करें। यह डॉक्स के अनुसार काम करता है:

एक विशेष मामले के रूप में, यदि आप प्रारंभिक गतिविधि के दौरान startActivityForResult () को एक कॉलकोड> = 0 के साथ कॉल करते हैं, तो आपकी गतिविधि के प्रारंभिक onCreate (बंडल saveInstanceState) / onResume () के दौरान, तब आपकी विंडो प्रदर्शित नहीं होगी, जब तक कि कोई परिणाम प्रारंभ गतिविधि से वापस नहीं आ जाता है । यह किसी अन्य गतिविधि पर पुनर्निर्देशन करते समय दिखाई देने वाली झिलमिलाहट से बचने के लिए है।

आप शायद इस करना चाहिए तभी जब करने के लिए तर्क onCreateहै null(आपकी गतिविधि का ताजा लांच यह दर्शाता है, के रूप में एक विन्यास परिवर्तन के कारण पुन: प्रारंभ करने के खिलाफ)।


यह काम नहीं करता। जब ऑनक्रिएट () शुरू होता है, तो एक्शन बार पहले से ही दिखाई देता है। डिबग में यह स्पष्ट रूप से देखा जाता है।
इल्या इज़ोवकिन

0

मुझे अभी भी अशक्त सूचक के साथ त्रुटि हुई थी और आखिरकार जब मैंने पहली getWindow ()। RequestFeature () और फिर super.onCreate () को कॉल किया तो इसमें मदद मिली।

public void onCreate(Bundle savedInstanceState) {
getWindow().requestFeature(Window.FEATURE_ACTION_BAR);
super.onCreate(savedInstanceState);
getActionBar().show();


0

वास्तव में, आप बस के Activityसाथ छप सेट कर सकते हैं NoActionBar और अपने मुख्य activityको एक्शन बार के साथ सेट कर सकते हैं ।


0

ऐसा करने का सबसे अच्छा तरीका दो है पहली गतिविधि को रिक्त गतिविधि के रूप में बनाएं और उस सामग्री को जिसे आप रखना चाहते हैं और फिर कुछ समय बाद दूसरी गतिविधि में आग लगाएं। इस तरह से आप एक्शन बार या किसी भी चीज़ के बिना अपनी स्प्लैश स्क्रीन के रूप में पहली गतिविधि कर सकते हैं। मेरी पहली गतिविधि है

package com.superoriginal.rootashadnasim.syllabus;

import android.content.Intent;
import android.os.Handler;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

public class first_screen extends AppCompatActivity {



@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_first_screen);


    final Handler h=new Handler();
    h.postDelayed(new Runnable() {
        @Override
        public void run() {
            Intent intent=new     Intent(getApplicationContext(),DrawerChooseBranchMainActivity.class);
            startActivity(intent);
        }
    },2000);

}
}

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

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

0

एंड्रॉइड स्टूडियो फुल स्क्रीन के लिए बिल्ड टेम्पलेट प्रदान करते हैं, यदि आप एंड्रॉइड स्टूडियो का उपयोग करते हैं तो आप फुल स्क्रीन गतिविधि को लागू करने के लिए नीचे दिए गए चरणों का पालन कर सकते हैं।

नई गतिविधि बनाने के लिए पहला कदम

पूर्ण स्क्रीन गतिविधि का चयन करें

किया हुआ। एंड्रॉइड स्टूडियो ने आपका काम किया, अब आप पूर्ण स्क्रीन के लिए कोड की जांच कर सकते हैं।


-1

यह सबसे अच्छा तरीका है जिसका मैंने Go to java फाइल में इस्तेमाल किया, उसके बाद onCreate:

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

        // Take instance of Action Bar 
        // using getSupportActionBar and 
        // if it is not Null 
        // then call hide function 
        if (getSupportActionBar() != null) { 
            getSupportActionBar().hide(); 
        } 
    }

-3

मुझे पता है कि लिंक पोस्ट करना चीजें करने का सबसे अच्छा तरीका नहीं है, लेकिन मैं आपको अत्यधिक सलाह देता हूं कि आप स्वयं Google से निम्न दस्तावेज पढ़ें। यह आपके सिस्टम यूआई (एक्शनबार, नेवी बार आदि जैसी चीजों को नियंत्रित करने के तरीके) पर आधिकारिक एंड्रॉइड डॉक्टर है। दुर्भाग्य से जानकारी सीधे पोस्ट करने के लिए बहुत अधिक है, लेकिन इसे पढ़ने के बाद आप वास्तव में समझ पाएंगे कि सुविधाओं को दिखाने और छिपाने के लिए कोई फर्क नहीं पड़ता कि आप किस संस्करण के लिए विकसित कर रहे हैं, यह इतना सरल है!

लिंक को कभी भी बदलें, यह प्रशिक्षण के तहत आधिकारिक एंड्रॉइड प्रलेखन के तहत पाया जा सकता है -> प्रारंभ करना -> उपयोगकर्ता इंटरफ़ेस के लिए सर्वोत्तम अभ्यास -> सिस्टम ui का प्रबंधन करना

https://developer.android.com/training/system-ui/index.html

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


-4

आप इसका उपयोग कर सकते हैं:

getSupportActionBar().hide(); अगर यह काम नहीं करता है तो यह कोशिश करें:

getActionBar().hide();

अगर ऊपर काम नहीं करता है इस तरह की कोशिश:

आपकी निर्देशिका में = res / मान / style.xml, open style.xml -> के लिए विशेषता parentपरिवर्तन हैparent="Theme.AppCompat.Light.DarkActionBar"

अगर यह सब भी काम नहीं करता है। मैं अब और नहीं जानता। लेकिन मेरे लिए यह काम करता है।


getSupportActionBar () छिपाने ()।; उच्चतम मत वाले उत्तर में उल्लेख किया गया था, getActionBar ()। Hide (); प्रश्न में उल्लेख किया गया था, और DarkActionBar का उल्लेख सोन गुयेन थान के उत्तर में किया गया था। इसके अलावा यह सवाल 4 साल पुराना है और पहले से ही कई उच्च मतदान जवाब हैं।
बढ़ाएं
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.