实现结果:
实现代码:fragment_dashboard.xml
修改说明:
修改了 TabLayout 标签内的 android:background 属性。
任务二 : 切换页面时,Toolbar显示底部导航的标题
实现结果:
实现代码:MainActivity
// 底部导航栏
private NavigationBarView.OnItemSelectedListener navListener = new NavigationBarView.OnItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
switch (item.getItemId()){
case R.id.navigation_home:
binding.viewPager.setCurrentItem(0);
binding.toolbar.setTitle("首页");
return true;
case R.id.navigation_dashboard:
binding.viewPager.setCurrentItem(1);
binding.toolbar.setTitle("面板");
return true;
case R.id.navigation_notification:
binding.viewPager.setCurrentItem(2);
binding.toolbar.setTitle("通知");
return true;
}
return false;
}
};
修改说明:
在底部导航切换点击时重新对toolbar的title进行重新的设置显示。
任务三 : 给Toolbar添加菜单,完成菜单项选择后的Snackbar提示
添加的菜单为 OptionMenu 组件。
实现结果:
实现代码:
main.xml(menu页面布局)
MainActivity(在其中添加两个方法)
// 创建显示 OptionsMenu 菜单
@Override
public boolean onCreateOptionsMenu(Menu menu) {
System.out.println("111");
getMenuInflater().inflate(R.menu.main, menu);
return super.onCreateOptionsMenu(menu);
}
// OptionsMenu 按钮监听事件
@Override
public boolean onOptionsItemSelected(@NonNull MenuItem item) {
switch (item.getItemId()){
case R.id.action_exit:
showSnackbarMsg("右侧导航按钮 -- " + item.getTitle() + " click");
return true;
case R.id.action_settings:
showSnackbarMsg("右侧导航按钮 -- " + item.getTitle() + " click");
return true;
default:
return false;
}
}
任务总结
不知道我对题目理解是否正确,希望老师可以给我提出宝贵意见。
附项目的目录结构
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)