導航:首頁 > 操作系統 > androidnoactionbar

androidnoactionbar

發布時間:2025-07-21 08:03:16

『壹』 如何在android中實現全屏,去掉標題欄效果

方法:在布局文件的預覽界面,如下圖操作

這樣就成功去除了標題欄。

『貳』 android怎麼修改系統dialog風格

1、編寫一個文本樣式。

DIALOG的標題是一個textview,在sytles.xml中,添加如下代碼來設置你自己的文本樣式:

?

<style name="DialogWindowTitle">

<item name="android:textSize">22sp</item>

<item name="android:textColor">@color/font_dark_grey</item>

</style>

2、設置對話框的標題主題。

上面的標題文本並不能直接設置為對話框的標題樣式。 我們還需要編寫一個表示標題的主題的style,在這里指定標題的文本樣式。代碼如下:

?

<style name="DialogWindowTitle.DeviceDefault">

<item name="android:maxLines">1</item>

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

<item name="android:textAppearance">@style/DialogWindowTitle</item>

</style>

3、設置對話框主題。

接下來,我們編寫我們的對話框主題,在這里指定標題的主題。由於一些屬性並不是public的,所以我們需要繼承自原來的某個style,代碼如下:

?

<!--Dialog主題-->

<style name="Theme.DeviceDefault.Dialog" parent="@android:style/Theme.DeviceDefault.Light.Dialog">

<item name="android:windowTitleStyle">@style/DialogWindowTitle.DeviceDefault</item>

</style>

4、自定義App的主題。

接下來,我們需要在我們的App theme中指定我們的對話框使用這種主題,所以需要定義一個App theme。同樣由於App theme的許多屬性並不是public的(比如下面要提到的標題下面的那條藍線),所以我們要繼承自一個原生的style。這里我根據程序需要選擇了Theme.Holo.Light.NoActionBar,代碼如下:

?

<style name="ParkingTheme" parent="@android:style/Theme.Holo.Light.NoActionBar">

<item name="android:dialogTheme">@style/Theme.DeviceDefault.Dialog</item>

</style>

5、指定App主題。

最後一步,我們需要在AndroidManifest.xml文件中,指定我們的app主題。這步很簡單,只需要在application標簽中指定android:theme的值即可,如下:

?

android:theme="@style/ParkingTheme"

不過這只是指定了Dialog的主題。如果是通過AlertDialog創建出來的對話框,主題還是原來的。所以我們還需要以下步驟。

7、編寫AlertDialog主題。

我們無法直接繼承系統主題里的AlertDialog的style。如把parent指定為Theme.DeviceDefault.Dialog.Alert,Theme.Holo.Dialog.Alert,Theme.DeviceDefault.Light.Dialog.Alert或Theme.Holo.Light.Dialog.Alert,都會導致編譯不過。所以我們需要繼承自Dialog的style。在這里我以Theme.Holo.Light.Dialog為例,代碼如下:

<!--AlderDialog主題-->

<style name="Theme.DeviceDefault.Dialog.Alert" parent="@android:style/Theme.Holo.Light.Dialog">

<item name="android:windowBackground">@android:color/transparent</item>

<item name="android:windowTitleStyle">@style/DialogWindowTitle.DeviceDefault</item>

<item name="android:windowContentOverlay">@null</item>

<item name="android:windowMinWidthMajor">@android:dimen/dialog_min_width_major</item>

<item name="android:windowMinWidthMinor">@android:dimen/dialog_min_width_minor</item>

</style>

在這里我參考了原生的alertDialog的style,設定了窗口背景為透明,以及windowContentOverlay為null這兩個重要屬性,否則你會看到在AlertDialog下面還有一層對話框的背景,或者是對話框的背景遮住了所有內容這樣的問題存在。

8、指定AlertDialog的主題。

我們需要在第4步所說的自定義的AppTheme中,添加一行代碼來指定要使用的AlertDialog的style,代碼如下:

?

<item name="android:alertDialogTheme">@style/Theme.DeviceDefault.Dialog.Alert</item>

9、修改標題下面的藍色線。

如果你修改了對話框的主題顏色,那麼標題下面的藍色的線肯定會讓你很郁悶。如果對話框較少,你可以選擇隱藏標題,然後自定義一個包含了標題的View來設置為對話框的內容。但是如果你的對話框有許多種,而且本來都是可以調用原來的API就來生成的話,要去定義這么多個帶標題的view,這樣做下來心裡肯定是很糾結的。

標題下面的藍色的線,並不是在Dialog或AlertDialog中設置或通過它們的style中定義的。它是定義在各種風格的dialog的layout當中,然後再在AppTheme裡面指定dialog的對應屬性。遺憾的是,目前我看到這幾個相關屬性還不是public的,不能自己設置,所以只有通過Java代碼來實現了。

表示這條藍色的線的叫做titleDivider,我們可以通過getResources()的API來獲取它的IP,然後設置顏色。代碼如下:

?

public static final void dialogTitleLineColor(Dialog dialog, int color) {

Context context = dialog.getContext();

int divierId = context.getResources().getIdentifier("android:id/titleDivider", null, null);

View divider = dialog.findViewById(divierId);

divider.setBackgroundColor(color);

『叄』 android載入自定義dialog,背景總是黑色的.不知道為什麼.求解答

  1. AlertDialog.Builder builder = new AlertDialog.Builder(UserInformationActivity.this,AlertDialog.THEME_HOLO_LIGHT);這種形式的,其中「AlertDialog.THEME_HOLO_LIGHT」設置背景,這個是白色的

  2. 把Activity設置成dialog的,修改AndroidManifest.xml中該Activity的theme,如:android:theme="@android:style/Theme.Holo.Light.Dialog.NoActionBar" ,這樣這個Activity會以dialog的形式彈出,並且是白色的

  3. 自己寫一個自定義dialog繼承dialog,你dialog的布局文件的最外層layout背景顏色設置成白色的

『肆』 Actionbar 可不可以把標題欄隱藏掉

Actionbar 可以把標題欄隱藏。

在Android3.0之後,Google對UI導航設計上進行了一系列的改革,其中有一個非常好用的新功能就是引入的ActionBar,他用於取代3.0之前的標題欄,並提供更為豐富的導航效果。
一、添加ActionBar
1、不需要導入ActionBar,因為在android3.0或者以上版本中,ActionBar已經默認的包含在Activity中
2、在Android3.0的默認主題「holographic」中,已經創造了ActionBar
3、當android:minSdkVersion 或者 android:targetSdkVersion 屬性被設置成11或者更高時,應用會被認為是Android3.0版本(默認含有ActionBar)

二、隱藏ActionBar
1、可以通過把主題設置為Theme.Holo.NoActionBar為一個Activity去除掉ActionBar。<activity android:theme="@android:style/Theme.Holo.NoActionBar">
2、也可以通過在代碼中調用show()或者hide()方法來相應的顯示或者隱藏ActionBar
3、在使用actionBar.hide();方法是系統默認會將ActionBar佔用的空間分配給界面,此時顯示的界面將會重新繪制。同樣調用actionBar.show();時也會重新繪制界面。如果一個程序需要頻繁的顯示或者隱藏ActionBar的話,這樣就不會有良好的效果。Google提供給一個屬性可以讓ActionBar浮在界面上,當然你可以讓ActionBar的背景為透明,這樣會有良好的體驗效果。

『伍』 Android系統自帶樣式Theme總結

本文從網上復制,給自己做筆記的,摘自: http://blog.csdn.net/hongya1109110121/article/details/11985545

Android系統自帶樣式(@android:style/) (轉)

1 android:theme="@android:style/Theme.Holo.Light.NoActionBar.Fullscreen"

布局頁面最上面 不會顯示  android:icon="@drawable/ic_launcher"中的值和android:label="@string/app_name"的值。

2 android:theme="@style/AppTheme"

布局頁面最上面 顯示  android:icon="@drawable/ic_launcher"中的值和android:label="@string/app_name"的值。

其他

在AndroidManifest.xml文件的activity中配置

1、android:theme="@android:style/Theme"

默認狀態,即如果theme這里不填任何屬性的時候,默認為Theme

2、android:theme="@android:style/Theme.NoDisplay"

任何都不顯示。比較適用於只是運行了activity,但未顯示任何東西

3、android:theme="@android:style/Theme.NoTitleBar「

背景主題的沒有標題欄的樣式,默認如果沒有設置的話,顯示黑背景

4、android:theme="@android:style/Theme.NoTitleBar.Fullscreen"

背景主題的沒有標題欄且全屏的樣式,默認為黑背景

5、android:theme="@android:style/Theme.Black"

默認狀態下黑背景

6、android:theme="@android:style/Theme.Black.NoTitleBar"

黑背景主題的沒有標題欄的樣式

7、android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"

黑背景主題的沒有標題欄且全屏的樣式

8、android:theme="@android:style/Theme.Light"

默認狀態下亮背景,與上述黑背景Theme.Black相反

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

亮背景主題的沒有標題欄的樣式,與Theme.Black.NoTitleBar相反

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

亮背景主題的沒有標題欄且全屏顯示的樣式,與Theme.Black.NoTitleBa.Fullscreenr相反

11、android:theme="@android:style/Theme.Dialog"

對話框樣式 將整個activity變成對話框樣式出現

12、android:theme="@android:style/Theme.InputMethod"

Window animations that are applied to input method overlay windows

13、android:theme="@android:style/ Theme.Panel"

刪除掉所有多餘的窗口裝飾,在一個空的矩形框中填充內容,作用范圍相當於把dialog中的所有元素全部去掉,只是一個空的矩形框,且此為默認的樣式

14、android:theme="@android:style/ Theme.Light.Panel"

刪除掉所有多餘的窗口裝飾,在一個空的矩形框中填充內容,作用范圍相當於把dialog中的所有元素全部去掉,只是一個空的矩形框,且默認是light的樣式

15、android:theme="@android:style/Theme.Wallpaper"

使用牆紙做主題,默認狀態。

16、android:theme="@android:style/ Theme.WallpaperSettings"

使用牆紙做主題,默認是使用將上一個界面調暗之後作為主題

17、android:theme="@android:style/ Theme.Light.WallpaperSettings"

使用牆紙做主題,默認Light狀態

18、android:theme="@android:style/Theme.Wallpaper.NoTitleBar"

使用牆紙做主題,且沒有標題欄

19、android:theme="@android:style/Theme.Wallpaper.NoTitleBar.Fullscreen"

使用牆紙做主題,且沒有標題欄,且全屏顯示

20、android:theme="@android:style/Theme.Translucent"

半透明狀態下的背景,將運行此activity之前的屏幕作為半透明狀態作為此activity運行時的樣式。

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

半透明狀態下沒有標題欄的背景,將運行此activity之前的屏幕作為半透明狀態作為此activity運行時的樣式。

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

半透明狀態下沒有標題欄且全屏的背景,將運行此activity之前的屏幕作為半透明狀態作為此activity運行時的樣式。

摘自: http://blog.csdn.net/hongya1109110121/article/details/11985545

『陸』 Android WebView載入頁面的輸入框被軟鍵盤遮擋的問題

當實現沉浸式狀態欄時遇到軟體盤遮擋WebView頁面的輸入框的問題,這是實現方式有問題,應該檢查你的實現方式。

1)載入WebView的Activty不能設置為全屏模式,即Theme.NoTitleBar.Fullscreen,可以使用Theme.Holo.Light.NoActionBar

2)沉浸式狀態欄的實現方式,在Activity的根布局裡加兩個屬性:

android:clipToPadding="true" 設置你的繪制區域在padding裡面

android:fitsSystemWindows="true" 調整view的padding屬性為系統窗口 留出空間

在Activity的onCreate方法裡面設置標題欄為透明,即:

getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_ST ATUS);

3)Activity裡面不能設置android:windowSoftInputMode的屬性,使用默認的屬性即可

以上3步即可實現沉浸式狀態欄並且能保證你的WebView載入的HTML頁面的輸入框不被軟鍵盤遮擋。



0



0

上一篇 Android Studio在SVN上創建分支

下一篇 Android Converty問題解決方案

相關文章推薦

• android中webview載入html輸入框不能輸入內容問題記錄

• 如何解決Android軟鍵盤蓋住輸入框的問題

• Android 軟鍵盤蓋住輸入框的問題

• Android 軟鍵盤蓋住輸入框的問題

• Android 軟鍵盤蓋住輸入框的問題

• Android 軟鍵盤蓋住輸入框的問題

• Android 軟鍵盤蓋住輸入框的問題

• android popupwindow 中輸入框被軟鍵盤彈出擋住問題解決

• ios解決軟鍵盤遮擋輸入框問題

• Android軟鍵盤遮擋輸入框解決方法

參考知識庫

Android知識庫

34080 關注 | 2937 收錄

猜你在找

Android中的五大布局

零基礎學軟體之HTML語言

【Android APP開發】Android高級商業布局快速實現

html5的app開發

Android前沿技術—《軟體框架搭建》

Android移植基礎

html系統學習篇

零基礎學習HTML5—html+css基礎

Android開發之初窺門徑

Android之數據存儲

關閉

閱讀全文

與androidnoactionbar相關的資料

熱點內容
base64encoderjava 瀏覽:480
linux視頻轉換 瀏覽:692
linux與unixshell編程指南 瀏覽:129
vb6反編譯程序錯誤 瀏覽:117
伺服器弄掛有什麼影響 瀏覽:298
安卓軟體為什麼運行不了 瀏覽:521
什麼安卓手機是四方的 瀏覽:475
雲伺服器廠商租用多少錢 瀏覽:349
平安車貸解壓要多久 瀏覽:412
樂一php程序員待遇 瀏覽:162
ZDM命令無法識別 瀏覽:919
解壓小手工A4紙 瀏覽:981
鋼筋加密區是幾倍 瀏覽:669
編譯程序代碼軟體 瀏覽:806
怎麼恢復加密的東西 瀏覽:987
程序員賣茶 瀏覽:697
後端程序員英文 瀏覽:363
滴滴程序員平均月薪 瀏覽:591
如何使用ftp命令 瀏覽:788
小書亭下載的文件在哪手機文件夾 瀏覽:181