android 自定义标题栏
你猜
阅读:595
2021-04-01 10:13:53
评论:0
近日
需要在android的标题栏上添加返回按钮,所以对android的标题栏进行了一下简单的研究~
第一步:
向实现自定义标题栏的Activity的onCreate方法里这样写
public void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
// 自定义样式文件
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); // 自定义窗口标题的样式 注意顺序
//activity布局文件
setContentView(R.layout.activity_kaoqin);
//自定义标题栏布局文件
KaoqinActivity.this.getWindow().setFeatureInt(
Window.FEATURE_CUSTOM_TITLE, R.layout.title_style);// 注意顺序
}
注意:
requestWindowFeature要在setContentView之前
getWindow().setFeatureInit最好在setContentView之后
第二步,就是写好自己的布局文件,实现标题栏的自定义。
title_style.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="48dp"
android:orientation="vertical" >
<Button
android:id="@+id/back"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="8dp"
android:layout_marginTop="10dp"
android:background="@drawable/back"
android:text=" 返回"
android:textColor="#858585"
android:textSize="18dp" />
</LinearLayout>
第三步:编写Style样式文件(String.xml文件中创建Style样式文件)
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">ezhangkong</string>
<string name="action_settings">Settings</string>
<string name="hello_world">Hello world!</string>
<style name="CustomWindowTitleBackground">
<item name="android:background">@drawable/title_style</item>
</style>
<style name="titlewindowstyle" parent="android:Theme">
<item name="android:windowTitleSize">45dp</item>
<item name="android:windowTitleBackgroundStyle">@style/CustomWindowTitleBackground</item>
</style>
</resources>
第四步:样式添加到AndroidManifest文件中
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.rf.ezhangkong"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="7"
android:targetSdkVersion="7" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/titlewindowstyle">
<activity
android:name="com.rf.ezhangkong.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<!--百度地图LBS服务 -->
<service android:name="com.baidu.location.f" android:enabled="true" android:process=":remote">
</service>
<!--E掌控功能主界面 -->
<activity
android:name="com.rf.function.KaoqinActivity"
></activity>
<!--E掌控六大功能界面 -->
<activity
android:name="com.rf.ezhangkong.WelcomeActivitys"
></activity>
<activity
android:name="com.rf.function.QingjiaActivity"
></activity>
<activity
android:name="com.rf.function.RenwuActivity"
></activity>
<activity
android:name="com.rf.function.DingweiActivity"
></activity>
<activity
android:name="com.rf.function.WdjtActivity"
></activity>
<activity
android:name="com.rf.function.ZtxxActivity"
></activity>
<activity
android:name="com.rf.function.WdbgActivity"
></activity>
<activity
android:name="com.rf.function.YaoyaoActivity"
></activity>
</application>
<!--E掌控相关权限 -->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>
<uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"></uses-permission>
<uses-permission android:name="android.permission.READ_LOGS"></uses-permission>
<!--相关应用权限 -->
<uses-permission android:name="android.permission.VIBRATE"/>
</manifest>
声明
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。