android Toolbar的使用结合状态栏与返回键
2015-07-08 15:45
435 查看
android Toolbar的使用结合状态栏与返回键
Toolbar的使用结合状态栏与返回键
toolbar_default.xml[code]<?xml version="1.0" encoding="utf-8"?> <android.support.v7.widget.Toolbar style="@style/ToolBarStyle" xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@color/apptheme_actionbar" android:theme="@style/ThemeOverlay.AppCompat.ActionBar" android:minHeight="@dimen/abc_action_bar_default_height_material" />
activity_view_pager.xml
[code]<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/apptheme_actionbar" android:fitsSystemWindows="true" android:orientation="vertical" > <include android:id="@+id/toolbar_actionbar" layout="@layout/toolbar_default" android:layout_width="match_parent" android:layout_height="wrap_content"/> <android.support.v4.view.ViewPager android:id="@+id/view_pager" android:background="@color/white" android:layout_width="match_parent" android:layout_height="match_parent" /> </LinearLayout>
z注意上面的最外层linearlayout属性:android:fitsSystemWindows=”true”
把它设置为true即可保证toolbar在状态栏的下方,而不与状态栏重叠
BeautyPhotoDetailsActivity.class
[code]protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); Window window = getWindow(); window.setFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS, WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); setContentView(R.layout.activity_view_pager); mToolbar = (Toolbar) findViewById(R.id.toolbar_actionbar); mToolbar.setNavigationIcon(getResources().getDrawable(R.drawable.abc_ic_ab_back_mtrl_am_alpha)); if (getIntent() != null) { imgs = (ArrayList<BeautyMainVo.Imgs>) getIntent().getSerializableExtra("imgs"); position = getIntent().getIntExtra("position", 0); } mToolbar.showOverflowMenu(); mToolbar.setTitle(imgs.get(position).getDesc());//使用此方法一定要在 setSupportActionBar(mToolbar);方法之前 // mToolbar.setSubtitle("1副标题"); setSupportActionBar(mToolbar); getSupportActionBar().setDisplayShowHomeEnabled(false); mToolbar.setNavigationOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { finish();; } }); }
注意上面的代码:
Window window = getWindow();
window.setFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS, WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
这个就是用来设置是否悬浮在状态栏的,注意需要版本判断,这里我只是简单的设置了下
加上上面的android:fitsSystemWindows=”true”即可设置好toobal
接下来就是显示返回键了很简单:
设置返回图标: mToolbar.setNavigationIcon(getResources().getDrawable(R.drawable.abc_ic_ab_back_mtrl_am_alpha));
设置是否显示返回键: getSupportActionBar().setDisplayShowHomeEnabled(false);
设置返回键的点击事件:
mToolbar.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
finish();;
}
});
相关文章推荐
- Android调用手机拍照以及从相册选择照片
- Android系统中的 packages.xml与packages.list
- Android studio 常用快捷键记录
- Android中Bitmap和Drawable [转]
- Android train——ListView绑定ArrayAdapter、SimpleAdapter、SimpleCursorAdapter、BaseAdapter
- android控件之webview和js与java交互
- Android 应用 横竖屏切换时Activity 被销毁 进程被kill 掉
- Android高效加载一张大图
- 异步消息处理机制-Handler、AsyncTask
- Android控件的一些属性
- Android学习笔记(1)--系统特点&框架
- Android 的OpenGL ES与EGL
- Android 百度地图开发之地图初始化
- 【android】adb常用命令
- Android开发响应检测及内存分析 - 【Heap】
- 开始使用Android Sutdio(四)Android Studio的配置
- Android studio 之 assets
- Android四大组件之一:Activity详解
- Android四大组件之一:Activity详解
- Android事件传递机制