一起Talk Android吧(第二百五十八回:Android中的Toolbar菜单一)
程序员文章站
2022-03-12 08:31:00
各位看官们大家好,上一回中咱们说的是Android中Toolbar的例子,这一回咱们继续说该例子。闲话休提,言归正转。让我们一起Talk Android吧!看官们,我们在上一回中介绍了Toolbar的标题,本章回中我们将介绍Toolbar的菜单。菜单位于Toolbar的最右侧,就是有三个点图标,点击后会弹出菜单来。菜单准确的说法应该是Action,它通常显示在标题右侧,如果有多个就折叠显示到菜单中,这个是通过属性值来控制的,我们稍后会做详细介绍。下面是菜单的使用步骤,请大家参考:1.在资源中创建men...
各位看官们大家好,上一回中咱们说的是Android中Toolbar的例子,这一回咱们继续说该例子。闲话休提,言归正转。让我们一起Talk Android吧!
看官们,我们在上一回中介绍了Toolbar的标题,本章回中我们将介绍Toolbar的菜单。菜单位于Toolbar的最右侧,就是有三个点图标,点击后会弹出菜单来。菜单准确的说法应该是Action,它通常显示在标题右侧,如果有多个就折叠显示到菜单中,这个是通过属性值来控制的,我们稍后会做详细介绍。下面是菜单的使用步骤,请大家参考:
- 1.在资源中创建menu目录和文件,主要是添加菜单中的子选项,添加方法和使用控件类似,汲及到的标签有Menu和Item。它们有很多属性,常用的是title,icon,showAsAction。 下面是一个代码示例,我们在例子中添加了六个菜单子选项:
//此文件 位于menu目录下
<?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/toolbar_title"
android:title="Toobar Title"
app:showAsAction="never" />
<item
android:id="@+id/toolbar_tv1"
android:title="Toobar Item1"
app:showAsAction="withText" />
<item
android:id="@+id/toolbar_tv2"
android:title="Toobar Item2"
app:showAsAction="withText" />
<item
android:id="@+id/toolbar_tv3"
android:title="Toobar Item3"
app:showAsAction="always" />
<item
android:id="@+id/toolbar_tv4"
android:title="Toobar Item4"
android:icon="@mipmap/ic_download"
app:showAsAction="always" />
<!--<item-->
<!--android:id="@+id/toolbar_tv5"-->
<!--android:title="Toobar Item5"-->
<!--app:showAsAction="always" />-->
<item
android:id="@+id/download"
android:title="Download"
app:showAsAction="ifRoom" />
</menu>
- 2.在代码中创建菜单(通过重写回调方法实现):
public boolean onCreateOptionsMenu(Menu menu) {
//这里的toolbar就是步骤1中创建的文件
getMenuInflater().inflate(R.menu.toolbar,menu);
return super.onCreateOptionsMenu(menu);
}
- 3.给菜单添加监听器,主要用来处理菜单子项的响应。
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.toolbar_title:
Log.i(TAG, "onOptionsItemSelected: menu title ");
break;
case R.id.toolbar_tv1:
Log.i(TAG, "onOptionsItemSelected: item1");
break;
case R.id.toolbar_tv2:
Log.i(TAG, "onOptionsItemSelected: item2");
break;
case R.id.toolbar_tv3:
Log.i(TAG, "onOptionsItemSelected: item3");
break;
case R.id.toolbar_tv4:
Log.i(TAG, "onOptionsItemSelected: item4");
break;
case R.id.download:
Log.i(TAG, "onOptionsItemSelected: download");
break;
default:
Log.i(TAG, "onOptionsItemSelected: default: "+item.getItemId());
break;
}
return true;
}
看官们,在代码中我们没有做具体的操作,只是打印一行log。大家可以依据菜单内容添加相应的功能。
各位看官,关于Android中Toolbar的例子咱们就介绍到这里,欲知后面还有什么例子,且听下回分解!
本文地址:https://blog.csdn.net/talk_8/article/details/107136835
上一篇: 自定义流式布局FlowLayout
下一篇: webgl 迷宫项目开发总结
推荐阅读
-
一起Talk Android吧(第五十六回:Android中的UI控件)
-
一起Talk Android吧(第二百六十回:Android中的BottomNavigationView概述)
-
一起Talk Android吧(第五十四回:Android中的Fragment显示与隐藏一)
-
一起Talk Android吧(第二百五十八回:Android中的Toolbar菜单一)
-
一起Talk Android吧(第七十八回:Android中UI控件之RecyclerView扩展)
-
一起Talk Android吧(第五十四回:Android中的Fragment显示与隐藏一)
-
一起Talk Android吧(第五十六回:Android中的UI控件)
-
一起Talk Android吧(第二百五十八回:Android中的Toolbar菜单一)
-
一起Talk Android吧(第二百六十回:Android中的BottomNavigationView概述)