1.Toolbar是安卓自带的就不用导包了 但是需要把ActionBar去掉 不然显示不出来
把这局代码复制到 清单文件
android:theme="@style/Theme.AppCompat.Light.NoActionBar"
2.主布局
<LinearLayout 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"
tools:context="comqq.example.hasee.myapplication.MainActivity"
android:orientation="vertical">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:background="?attr/colorPrimary"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:title="北京教育">
</android.support.v7.widget.Toolbar>
</LinearLayout>3.创建menu_man.xml
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
>
<item android:id="@+id/action_search" android:title="Search" android:icon="@mipmap/ic_launcher" app:showAsAction="ifRoom"/>
<item android:id="@+id/action_notifications" android:title="notifications" android:icon="@mipmap/ic_launcher_round" app:showAsAction="ifRoom"/>
<item android:id="@+id/action_settings" android:title="ccc" android:orderInCategory="100" android:icon="@mipmap/ic_launcher" app:showAsAction="never"/>
</menu>4.主代码
public class MainActivity extends AppCompatActivity {
private Toolbar toolbar;
private RecyclerView recy;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
toolbar=findViewById(R.id.toolbar);
//这句代码必须加 不然不会显示
setSupportActionBar(toolbar);
toolbar.setOnMenuItemClickListener(new Toolbar.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem item) {
switch (item.getItemId()) {
case R.id.action_search:
Toast.makeText(MainActivity.this, "1", Toast.LENGTH_SHORT).show();
break;
case R.id.action_notifications:
Toast.makeText(MainActivity.this, "2", Toast.LENGTH_SHORT).show();
break;
case R.id.action_settings:
Toast.makeText(MainActivity.this, "3", Toast.LENGTH_SHORT).show();
break;
}
return false;
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_main,menu);
return true;
}
}5.Toolbar的三个小点也可以改变颜色 在values—》styles做修改 然后在布局中添加 toolbar:popupTheme="@style/ToolbarPopupTheme"6.修改Toolbar popup menu 弹出位置 修改styles.xml<resources> <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"> ... <item name="android:textColorSecondary">#ffffff</item> </style> </resources><style name="ToolbarPopupTheme" parent="@style/ThemeOverlay.AppCompat.Dark"> <item name="android:colorBackground">#000000</item> <item name="actionOverflowMenuStyle">@style/OverflowMenuStyle</item> <!--新增一个item,用于控制menu--> </style> <style name="OverflowMenuStyle" parent="Widget.AppCompat.Light.PopupMenu.Overflow"> <item name="overlapAnchor">false</item> <!--把该属性改为false即可使menu位置位于toolbar之下--> </style>
本文详细介绍如何在安卓应用中配置和使用Toolbar,包括去除ActionBar、在布局文件中定义Toolbar、创建菜单项并设置响应事件,以及如何自定义Toolbar的样式。
642

被折叠的 条评论
为什么被折叠?



