额,今天给标题栏左上角加一个返回按钮。
遇到一个问题,就是toolbar与actionbar的问题,新建布局时候,默认是启动actionbar的,不过现在流行toolbar了,因为actionbar太局限了。
这个返回按钮,其实叫做应用程序按钮,可以利用监听器设置不同事件,用在调用activity就可以返回了!而在toolbar的右侧的菜单是利用inflate填充进去的菜单xml,与左侧的按钮不是一回事。应该说是,toolbar或者actionbar将标题栏分为两部分:左侧一个按钮加名称,右侧菜单(这个菜单可以折叠显示三个点)
//kotlin代码设置toolbar,一种方法
valiwh_toolbar= getSupportActionBar()//获取actionBar对象
iwh_toolbar.setHomeButtonEnabled(true)//设置是否可以点击
iwh_toolbar.setDisplayHomeAsUpEnabled(true)//设置返回按钮
iwh_toolbar.setTitle("标题栏文本")//这个在mainfest文件也可以直接定义
(这是V7库的toolbar)
//XML文件
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#3F51B5">
//重写这个按钮的点击事件
override funonSupportNavigateUp():boolean{
finish();//关闭activity
return super.onSupportNavigateUp()
}
//Kotlin代码设置actionbar,两种方法
//kotlin方法一
getSupportActionBar().setDisplayHomeAsUpEnabled(true)
//XML方法二
android:name=".MyActivity">
android:name="android.support.PARENT_ACTIVITY"
android:value=".BackActivity" />
//kotlin设置用toolbar替换actionbar
(注意:mainfest文件设置次ativity的主题为noActionBar)去除actionBar
之后调用:setSupportActionBar(toolbar)前提是在xml中定义了toolbar
领取专属 10元无门槛券
私享最新 技术干货