Android修改TitleBar標題欄詳解

2021-07-06 04:12:14 字數 935 閱讀 3237

最近專案中把乙個activity的theme設成了dialog彈出框樣式,發現標題欄高度和字型都太小,於是查了相關的資料和原始碼,總結了修改方法。高度是通過修改android:windowtitlesize,字型大小通過style修改。

android程式預設的activity標題欄只能顯示一段文字,而且不能改變它的布局、顏色、標題欄的高度等。如果想要在標題欄加上個圖示、 button、輸入框、進度條、修改標題欄顏色等,只能使用自定義的標題欄。自定義標題欄可以通過在oncreate函式中新增以下**來實現,需要注意的是**的順序必須按照下面的樣式,否則將無效。注意了,現在建議使用最新的*******控制項解決標題欄自定義問題,其它方法都過時了。

public static void settitle(activity activity, int resid)

*******的示例:

<?xml version="1.0" encoding="utf-8"?>

雖然上面這樣可以在標題欄加入一些控制項,但是仍然不能改變標題欄的高度、背景色,要想達到這個目的,只能使用theme(主題)。因此往project裡 先新增乙個style。改變背景色修改android:windowtitlebackgroundstyle的值,改變標題欄高度則修改android:windowtitlesize的值。下面是乙個示例:

center

10dp

修改androidmanifest.xml檔案,找到要自定義標題欄的activity ,新增上android:theme值

android:theme值就是上面那個style.xml檔案裡定義的乙個style的name值。 

按照以上的步驟,修改標題欄布局、高度、背景色的功能就實現了。

Android 打造乙個通用的TitleBar

public class titlebar extends relativelayout public inte ce onshareclicklistener public inte ce onruleclicklistner public titlebar context context pub...

Android修改系統時間

最近碰到修改系統時間的需求,折騰了一段時間,發現網上有一種方法是通過 命令的方式修改的。在這裡感謝那位老兄的方法。timemanager.setsystemtime public static void setsystemtime date date string str list.toarray ...

Android 定製化修改

android 禁止螢幕休眠和鎖屏的方法 android settings中provider的預設值和載入到資料庫流程 android系統預設語言改為中文 第一種方法 修改 build tools buildinfo.sh echo ro.product.locale.language zh ech...