1.设置导航图标有两种方式:
toolbar.setNavigationIcon(R.mipmap.ic_launcher); //设置导航图标
在toolbar控件里面写 app:navigationIcon="@mipmap/ic_launcher"
2.左侧侧滑条目触发点击事件时两张照片的切换
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true" android:drawable="@mipmap/ic_assessment_white_24dp"></item>
<item android:state_checked="false" android:drawable="@mipmap/ic_launcher"></item>
<!--false 是默认的样式 true是点击后的样式-->
</selector>
3.设置toolbar标题的两种方式
第一种:布局文件 相对布局里面包一个TextView
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:elevation="0dp" //作用是去除toolbar和tablayout之间的一道红线
>
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="50dp"
android:background="@color/colorRed"
app:layout_scrollFlags="scroll|enterAlways"
>
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<TextView
android:id="@+id/toolbar_textView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="@string/app_name"
android:textColor="@color/colorWhite"
android:textSize="18dp"
android:layout_marginTop="13dp"/>
</RelativeLayout>
</android.support.v7.widget.Toolbar>
</android.support.design.widget.AppBarLayout>
第二种:activity里面添加代码
toolbar.setTitle("中国新闻"); //设置标题
toolbar_textView.setText("中国新闻"); //或者使用控件设置标题
toolbar.setTitleTextAppearance(mContext,R.style.title);//设置标题颜色和字体大小
<style name="title"> //设置标题颜色和字体大小(中国新闻四个大字)
<item name="android:textColor">@color/colorWhite</item>
<item name="android:textSize">20sp</item>
</style>
4.将menu弹窗和toolbar关联
如果想给menu弹窗设置样式,注意:先设置样式再关联
如果不想给menu弹窗设置样式,就不用写了
toolbar.setPopupTheme(R.style.menu);
<style name="menu"> //设置右侧menu菜单的字体颜色和条目背景颜色
<item name="android:textColor">@color/colorBlack</item>
<item name="android:colorBackground">@color/colorPrimary</item>
</style>
//把menu弹窗和toolbar关联 就这一行代码
toolbar.inflateMenu(R.menu.toolbar);
5.代码解释
app:layout_behavior="@string/appbar_scrolling_view_behavior" 谁负责滑动,占据主动地位
app:layout_scrollFlags="scroll" 让toolbar跟随滑动,占据被动地位
app:navigationIcon="@mipmap/ic_launcher" 在布局文件中设置导航图标
6.获取每个碎片的标题
CharSequence title = item.getTitle();
if(title.equals("新闻")){
toolbarTextView.setText("北京新闻");
}else {
toolbarTextView.setText(title);
}
item.setChecked(true);//条目选中状态
7.竹帧布局的标准
竹帧布局,谁先写的,谁就在下面
8.侧滑NavigationView
navigationView.setItemIconTintList(null); //去除系统默认灰色