7

標題欄在manifest文件中我有這行我的應用程序標籤顯示自代碼

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

,並基本上每個活動沒有標題欄,但對於活動之一,我想展示標題欄

我知道躲我可以使用此代碼吧

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

我如何可以顯示從代碼的標題欄?

編輯 請不要高大的我,我怎麼能隱藏標題欄:),我知道,如果有人知道我怎麼能證明呢?

我知道,我可以把NoTitleBar在我想隱藏的每一次活動,我可以把它留給一個我想要顯示......不過,這不是我的觀點

+0

這是一個很好的問題!我沒有看到任何可以讓您在刪除後將其重新填充的內容。也許使用requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); – JPM 2013-04-29 15:23:47

+0

@JPM它會粉碎我猜 – stinepike 2013-04-29 15:24:45

+0

你ned處理顯示和隱藏標題欄在活動本身,而不是在清單中設置它的'主題' – Pragnani 2013-04-29 15:25:21

回答

3

使用

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

除了您要顯示標題的活動之外的每個活動。不要在application屬性中使用此主題屬性

根據您的評論,您希望將我的更改只更改爲一個地方,並且您似乎不希望僅在一個清單(!)中使該chage成爲可能。總之你可以做另一件事

使用BaseActivity類,其中使用無標題功能並將其擴展到除標題活動外的所有類中。

1
做到這一點

最好的辦法是引用此Try to use Window.FEATURE_CUSTOM_TITLE

顯然,這不工作,任何其他方式似乎總是崩潰

requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); 
setContentView(R.layout.settings); 
activity.setTitle("Settings"); 

我敢肯定這是要做到這一點通過的方式碼。

5

對於代碼工作完美的我古都行:

隱藏:

getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN); 
    getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN); 

顯示:

getWindow().addFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN); 
    getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN); 
+1

在Android 5.X + – jjxtra 2015-10-20 15:35:47

+0

不適用於我的工作不適用於我在Android 5.X也:( – Ahmed 2015-12-08 19:21:51