如何实现一个标准的MD风格页面
来源:互联网 发布:手机淘宝购物要需要哪 编辑:程序博客网 时间:2024/06/04 19:01
如何实现一个标准的MD风格页面
自上而下
首先是透明的状态栏
getWindow().requestFeature(Window.FEATURE_NO_TITLE);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
Window window = getWindow();
window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS
| WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);
window.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_LAYOUT_STABLE);
window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
window.setStatusBarColor(Color.TRANSPARENT);
//window.setNavigationBarColor(Color.TRANSPARENT);
}
然后是Toolbar
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="?attr/mainBackground"
android:fitsSystemWindows="true"
tools:context="skkk.gogogo.dakainote.Activity.SettingActivity.SettingActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/AppTheme.AppBarOverlay">
<android.support.v7.widget.Toolbar
android:id="@id/tb_author"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:popupTheme="@style/AppTheme.PopupOverlay"
app:title="@string/author" />
</android.support.design.widget.AppBarLayout>
//这里放置需要显示的页面
</LinearLayout>
</android.support.design.widget.CoordinatorLayout>
这里初始化一下toolbar
设置一下我们需要的返回按钮
tbAuthor = (Toolbar) findViewById(R.id.tb_author);
setSupportActionBar(tbAuthor);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
tbAuthor.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
onBackPressed();
}
});
如果需要加入toolbar右侧菜单的话那么还有如下设置:
/添加菜单
tbNoteDetail.inflateMenu(R.menu.note_edit_menu);
菜单xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@id/menu_note_share"
android:orderInCategory="80"
android:title="@string/note_edit_menu"
android:icon="@drawable/vector_share"
app:showAsAction="ifRoom">
</item>
</menu>
设置菜单点击事件
* @方法 添加菜单点击事件
*
*/
@Override
public boolean onOptionsItemSelected(MenuItem item) {
//获取菜单item_id
int id = item.getItemId();
//根据菜单判断
switch (id) {
case R.id.menu_note_share:
break;
}
return super.onOptionsItemSelected(item);
}
这就完成了一个标准的MD页面
0 0
- 如何实现一个标准的MD风格页面
- MD的配色风格
- MD风格的progressbar实现,可以在5.1以下使用
- MD风格
- 如何在photoshop里创作一个web 2.0风格的页面
- 一个基于MD风格的android对话框,代码兼容性很好,样式也非常简洁
- Android 走向MD的配色风格
- 实现 一个满足你特殊癖好的 正则.md
- 实现风格转换页面
- 一个标准的HTML5语义化页面
- strcpy的一个标准实现
- 第四章 基于对象的编程风格(如何实现一个class)
- Android:使用android-support-design实现MD风格对话框
- DrawerLayout NavigationView 实现侧滑(Android MD风格一)
- Android如何在一个TextView中实现多种文本风格?
- Android-MD风格设置
- OFBIZ的页面风格
- 404风格的页面
- 苏嵌13 16.11.12
- 代码(正三角/倒三角/水仙花)
- SAP和AD认证实践(一)
- lighttpd绑定域名
- cookies,sessionStorage 和 localStorage 的区别
- 如何实现一个标准的MD风格页面
- object
- HDU 1695 GCD 【容斥】【质因数分解】【欧拉函数】
- Android----PopupWindow
- webstorm10 注册码
- 斐波那契数列(代码实现)
- 微擎二次开发解决方案
- PHP-FPM
- 输入某年某月某日,判断这一天是这一年的第几天?(闰年)思路与代码