前言
ToolBar 是 Android Material Design 中非常重要的组件之一,它可以提供一个灵活性很高的界面工具栏,可以让用户快速访问应用程序的不同功能。ToolBar 可以取代传统的 ActionBar,提供更加灵活的使用方式,同时也可以很好地适应不同的屏幕尺寸和设备方向。
本文将详细介绍 Android Material Design 下的 ToolBar,包括 ToolBar 的基本用法、属性、样式以及使用注意事项等方面,并附有示例代码,希望能够对读者有所帮助。
ToolBar 的基本用法
引入 ToolBar
在使用 ToolBar 之前,需要在布局文件中引入 ToolBar。可以通过以下方式引入:
<androidx.appcompat.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="?attr/colorPrimary" android:title="@string/app_name" app:popupTheme="@style/AppTheme.PopupOverlay" />
其中,androidx.appcompat.widget.Toolbar
是 ToolBar 的类名,android:id="@+id/toolbar"
是 ToolBar 的 ID,android:layout_width
和 android:layout_height
分别是 ToolBar 的宽度和高度,android:background
是 ToolBar 的背景颜色,android:title
是 ToolBar 的标题,app:popupTheme
是 ToolBar 弹出菜单的主题。
设置 ToolBar
在 Activity 中需要使用 setSupportActionBar() 方法来设置 ToolBar:
Toolbar toolbar = findViewById(R.id.toolbar); setSupportActionBar(toolbar);
使用 ToolBar
设置完 ToolBar 后,可以在 onCreateOptionsMenu() 方法中创建菜单,如下所示:
@Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.menu_main, menu); return true; }
在 onOptionsItemSelected() 方法中处理菜单的点击事件,如下所示:
-- -------------------- ---- ------- --------- ------ ------- ------------------------------ ----- - --- -- - ----------------- -- --- -- --------------------- - -- -------- ------ ----- - ------ ---------------------------------- -
ToolBar 的属性
标题和子标题
可以通过以下方式设置 ToolBar 的标题和子标题:
toolbar.setTitle("标题"); toolbar.setSubtitle("子标题");
Logo
可以通过以下方式设置 ToolBar 的 Logo:
toolbar.setLogo(R.drawable.logo);
导航按钮
可以通过以下方式设置 ToolBar 的导航按钮:
toolbar.setNavigationIcon(R.drawable.ic_menu); toolbar.setNavigationOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // 处理导航按钮点击事件 } });
菜单
可以通过以下方式设置 ToolBar 的菜单:
-- -------------------- ---- ------- -------------------------------------- -------------------------------------- --------------------------------- - --------- ------ ------- ------------------------ ----- - --- -- - ----------------- -- --- -- --------------------- - -- -------- ------ ----- - ------ ------ - ---
ToolBar 的样式
主题
可以通过以下方式设置 ToolBar 的主题:
<androidx.appcompat.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="?attr/colorPrimary" android:title="@string/app_name" app:popupTheme="@style/AppTheme.PopupOverlay" app:theme="@style/ThemeOverlay.AppCompat.ActionBar" />
其中,app:theme
是 ToolBar 的主题。
样式
可以通过以下方式设置 ToolBar 的样式:
-- -------------------- ---- ------- ------ ---------------- ----------------------------------------- ----- ---------------------------------------------------- ----- --------------------------------------------------------- ----- ------------------------------------------------------------ ----- ------------------------------------------------------ ----- ------------------------------------------------------------- -------- ---------------------------------- ------------------------- ----------------------------------- ------------------------------------------- ------------------------ -------------------------------- --
其中,style
是 ToolBar 的样式,item
是 ToolBar 的属性。
使用注意事项
- ToolBar 必须在 Activity 中设置 setSupportActionBar() 方法,否则将无法正常显示。
- ToolBar 的标题和子标题可以通过 setTitle() 和 setSubtitle() 方法进行设置。
- ToolBar 的 Logo 可以通过 setLogo() 方法进行设置。
- ToolBar 的导航按钮可以通过 setNavigationIcon() 和 setNavigationOnClickListener() 方法进行设置。
- ToolBar 的菜单可以通过 inflateMenu() 和 setOnMenuItemClickListener() 方法进行设置。
示例代码
下面是一个完整的示例代码:
-- -------------------- ---- ------- ---------------------------------- ------------------------- ----------------------------------- ------------------------------------------- --------------------------------------- -------------------------------- --------------------------------------------- -- ------------- ----------------------------------- ------------------------------------ ------------------------------- --------- ----------------------------------- ------------------------------------ ------------------- ------- -- ---------------
-- -------------------- ---- ------- ------ ----- ------------ ------- ----------------- - ------- ------- -------- --------- --------- ---- --------------- ------------------- - ----------------------------------- --------------------------------------- ------- - --------------------------- ----------------------------- ---------------------------------------------- ---------------------------------------- ---------------------- - --------- ------ ---- ------------ -- - --------------------------------- ----------- --------------------------- - --- -------------------------------------- -------------------------------------- --------------------------------- - --------- ------ ------- ------------------------ ----- - --- -- - ----------------- -- --- -- --------------------- - --------------------------------- ----------- --------------------------- ------ ----- - ------ ------ - --- - -
总结
本文详细介绍了 Android Material Design 下的 ToolBar,包括 ToolBar 的基本用法、属性、样式以及使用注意事项等方面,并附有示例代码。通过本文的学习,相信读者已经掌握了 ToolBar 的使用方法,可以在实际开发中灵活运用。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/65d9cc731886fbafa4737a83