toolbar的简单使用
程序员文章站
2024-03-24 12:54:58
...
toolbar与actionbar的冲突解决方式:这里我们给它简单修改主题
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.DayNight.NoActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
private Toolbar toolbar;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
toolbar= findViewById(R.id.toolbar);
//设置toolbar
setSupportActionBar(toolbar);
//设置是否显示主题
getSupportActionBar().setDisplayShowTitleEnabled(true);
//设置标题
getSupportActionBar().setTitle("主标题");
//设置主标题颜色
toolbar.setTitleTextColor(Color.RED);
//设置子标题及子标题的颜色
toolbar.setSubtitle("subtitle");
toolbar.setSubtitleTextColor(Color.BLUE);
//设置是否显示左侧的按钮
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
//设置logo
toolbar.setLogo(R.mipmap.ic_launcher);
//给左侧按钮添加点击事件
toolbar.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
startActivity(new Intent(MainActivity.this,TwoActivity.class));
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
//绑定toolbar和menu
getMenuInflater().inflate(R.menu.menu_main,menu);
return true;
}
//toolbar右侧菜单的相关方法
//注意每一个方法的返回值,点击到源码中看下返回值的意义
//只会在第一次创建时候调用
//每次显示前都会调用
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
//每次都会追加子菜单,防止重复追加,需要先调用
//menu.clear();
//menu.add()
return super.onPrepareOptionsMenu(menu);
}
//菜单被选中的时候调用
@Override
public boolean onOptionsItemSelected(MenuItem item) {
return super.onOptionsItemSelected(item);
}
//关闭的时候调用
@Override
public void onOptionsMenuClosed(Menu menu) {
super.onOptionsMenuClosed(menu);
}
//打开的时候调用
@Override
public boolean onMenuOpened(int featureId, Menu menu) {
return super.onMenuOpened(featureId, menu);
}
menu菜单//根据要求自定义
<item
android:id="@+id/action_edit"
android:icon="@mipmap/ic_launcher"
android:orderInCategory="80"
android:title="one"
app:showAsAction="never"/>
<item
android:id="@+id/action_share"
android:icon="@mipmap/ic_launcher"
android:orderInCategory="90"
android:title="two"
app:showAsAction="never"/>
<item
android:id="@+id/action_settings"
android:icon="@mipmap/ic_launcher"
android:orderInCategory="100"
android:title="three"
app:showAsAction="never"/>
上一篇: css3动画:transition和animation
下一篇: ToolBar使用