android标题栏中添加返回按钮
2017-04-16 12:11
351 查看
标题栏中的返回按钮在实际使用中用的比较多,今天就来讲讲我在项目开发中的使用经历,话不多说,还是直接上源码,上源码是最给力的。
一、 编写自定义类
[java] view
plain copy
![](https://code.csdn.net/assets/CODE_ico.png)
![](https://code.csdn.net/assets/ico_fork.svg)
public class CustomTitle {
private static Activity mActivity;
public static void getCustomTitle(Activity activity, String title) {
mActivity = activity;
mActivity.requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
mActivity.setContentView(R.layout.custom_title);
mActivity.getWindow().setFeatureInt(Wind
15a93
ow.FEATURE_CUSTOM_TITLE,
R.layout.custom_title);
TextView textView = (TextView) activity.findViewById(R.id.head_center_text);
textView.setText(title);
Button titleBackBtn = (Button) activity.findViewById(R.id.TitleBackBtn);
titleBackBtn.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
Log.d("Title back","key down");
mActivity.finish();
}
});
}
}
二 、 xml资源,在layout中定义custom_title
[java] view
plain copy
![](https://code.csdn.net/assets/CODE_ico.png)
![](https://code.csdn.net/assets/ico_fork.svg)
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<Button
android:id="@+id/TitleBackBtn"
android:layout_width="50dp"
android:layout_height="wrap_content"
android:gravity="center"
android:layout_alignParentRight="true"
android:background="@android:drawable/ic_menu_revert"/>
<TextView
android:id="@+id/head_center_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text=""
android:textSize="25sp"
android:textColor="#FFFFFF"
/>
</RelativeLayout>
三 、 在需要调用的activity中调用
[java] view
plain copy
![](https://code.csdn.net/assets/CODE_ico.png)
![](https://code.csdn.net/assets/ico_fork.svg)
public class InformationActivity extends Activity{
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
CustomTitle.getCustomTitle(this, "个人信息");
setContentView(R.layout.informationactivity);
.......................
}
}
四 、 在res/values/style.xml中添加style定义
[html] view
plain copy
![](https://code.csdn.net/assets/CODE_ico.png)
![](https://code.csdn.net/assets/ico_fork.svg)
<style name="MyCustomTheme" parent="android:Theme">
<item name="android:windowTitleBackgroundStyle">@style/TitleBarBackground</item>
<item name="android:windowTitleSize">50dp</item>
</style>
五 、 在AndroidManifest.xml中对InformationActivity添加支持
[html] view
plain copy
![](https://code.csdn.net/assets/CODE_ico.png)
![](https://code.csdn.net/assets/ico_fork.svg)
<activity
android:name="com.xxx.InformationActivity"
android:theme="@style/MyCustomTheme"
android:screenOrientation="landscape" />
OK,完成上述几个步骤,就可以了。
一、 编写自定义类
[java] view
plain copy
![](https://code.csdn.net/assets/CODE_ico.png)
public class CustomTitle {
private static Activity mActivity;
public static void getCustomTitle(Activity activity, String title) {
mActivity = activity;
mActivity.requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
mActivity.setContentView(R.layout.custom_title);
mActivity.getWindow().setFeatureInt(Wind
15a93
ow.FEATURE_CUSTOM_TITLE,
R.layout.custom_title);
TextView textView = (TextView) activity.findViewById(R.id.head_center_text);
textView.setText(title);
Button titleBackBtn = (Button) activity.findViewById(R.id.TitleBackBtn);
titleBackBtn.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
Log.d("Title back","key down");
mActivity.finish();
}
});
}
}
二 、 xml资源,在layout中定义custom_title
[java] view
plain copy
![](https://code.csdn.net/assets/CODE_ico.png)
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<Button
android:id="@+id/TitleBackBtn"
android:layout_width="50dp"
android:layout_height="wrap_content"
android:gravity="center"
android:layout_alignParentRight="true"
android:background="@android:drawable/ic_menu_revert"/>
<TextView
android:id="@+id/head_center_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text=""
android:textSize="25sp"
android:textColor="#FFFFFF"
/>
</RelativeLayout>
三 、 在需要调用的activity中调用
[java] view
plain copy
![](https://code.csdn.net/assets/CODE_ico.png)
public class InformationActivity extends Activity{
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
CustomTitle.getCustomTitle(this, "个人信息");
setContentView(R.layout.informationactivity);
.......................
}
}
四 、 在res/values/style.xml中添加style定义
[html] view
plain copy
![](https://code.csdn.net/assets/CODE_ico.png)
<style name="MyCustomTheme" parent="android:Theme">
<item name="android:windowTitleBackgroundStyle">@style/TitleBarBackground</item>
<item name="android:windowTitleSize">50dp</item>
</style>
五 、 在AndroidManifest.xml中对InformationActivity添加支持
[html] view
plain copy
![](https://code.csdn.net/assets/CODE_ico.png)
<activity
android:name="com.xxx.InformationActivity"
android:theme="@style/MyCustomTheme"
android:screenOrientation="landscape" />
OK,完成上述几个步骤,就可以了。
相关文章推荐
- Android标题栏中添加返回按钮功能
- android标题栏中添加返回按钮
- Android标题栏最右边添加按钮
- android带返回按钮的自定义标题栏布局文件详解
- android带返回按钮的自定义标题栏
- Android在顶部标题栏添加按钮
- Android标题栏上添加多个Menu按钮
- Activity标题栏添加返回按钮
- Android标题栏上添加多个Menu按钮的实例
- Android标题栏最右边添加按钮
- 给Android标题栏加上返回按钮
- Android Actionbar 添加返回按钮
- Android标题栏最右边添加按钮的实例
- Android标题栏上添加多个Menu按钮
- Android 添加菜单和返回按钮
- android带返回按钮的自定义标题栏
- Android ListView添加按钮后自身无响应.
- android监听返回按钮事件
- WinForm怎么在窗口标题栏上添加按钮?[转]
- Android状态栏上添加按钮(程序部分)