Wear OS手表应用开发教程之-底部导航-WearableActionDrawerView(动态控制)
本文目录 点击直达
Wear OS手表应用开发系列教程 点击直达
Wear OS手表应用开发教程之-创建应用
Wear OS手表应用开发教程之-创建环形滚动列表-WearableRecyclerView
Wear OS手表应用开发教程之-禁止全屏滑动返回Activity
Wear OS手表应用开发教程之-侧滑隐藏-SwipeDismissFrameLayout
Wear OS手表应用开发教程之-Activity使用微光模式-AmbientModeSupport
Wear OS手表应用开发教程之-顶部导航-WearableNavigationDrawerView
Wear OS手表应用开发教程之-底部导航-WearableActionDrawerView
Wear OS手表应用开发教程之-自定义导航栏布局-WearableDrawerView(动态控制)
本文标签
Android Studio | Wear OS | WearableActionDrawerView | 底部导航 |
---|
路过的年轻人啊,你是要用左手点个赞呢,还是要右手点个关注呢
前言:
正如Android一样,Wear OS也是谷歌创建的智能操作系统,属于Android的一个分支。假设你有过Android
Application开发经验,那给Wear OS 做应用适配将是一件非常简单的事情
上一次我们介绍了顶部导航(不太了解的话可以查看我的其他文章),这一次我给把底部导航都凑齐了。讲道理,手表导航这一块做的比手机好很多,按往期文章流程,我们先看效果图
效果展示:
底部导航
使用方法:
修改布局XML文件,如果说需要在
ListView
或RecyclerView
向下滑动显示底部导航的话,需要在RecyclerView
加入android:nestedScrollingEnabled="true"
<?xml version="1.0" encoding="utf-8"?>
<!--*布局必须是这个-->
<androidx.wear.widget.drawer.WearableDrawerLayout 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"
android:background="@color/dark_grey"
android:padding="@dimen/box_inset_layout_padding"
tools:context=".MainActivity"
tools:deviceIds="wear">
<!--如果说需要在ListView或RecyclerView滑动到底部自动显示的话需要在`RecyclerView`加入android:nestedScrollingEnabled="true"-->
<androidx.wear.widget.WearableRecyclerView
android:id="@+id/recycler_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:focusable="true"
android:focusableInTouchMode="true"
android:scrollbars="vertical" />
<androidx.wear.widget.drawer.WearableActionDrawerView
android:id="@+id/wearableActionDrawerView"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:actionMenu="@menu/action"
/>
</androidx.wear.widget.drawer.WearableDrawerLayout>
在res文件夹下创建menu文件夹,新建
action.xml
文件,在里面填写需要展示底部导航的Item,第一个item的图标将会在表盘底部显示
<?xml version="1.0" encoding="utf-8"?>
<!--在这里的所有Item相当于界面上的Item-->
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/menu_1"
android:icon="@drawable/ic_done_black_24dp"
android:title="测试"
/>
<item
android:id="@+id/menu_2"
android:icon="@drawable/ic_close_black_24dp"
android:title="测试2" />
</menu>
到这里我们的导航栏基本完成,如果需要高级的动态操控,请
参考以下代码
class MainActivity : WearableActivity(), CircularProgressLayout.OnTimerFinishedListener {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
// Enables Always-on
setAmbientEnabled()
/**以下是WearableActionDrawerView动态操控的代码**/
//设置底部导航拉起后的标题
wearableActionDrawerView.setTitle("测试")
//稍微漏出抽屉(即显示第一个item的图标)
wearableActionDrawerView.controller.peekDrawer()
//打开抽屉
wearableActionDrawerView.controller.openDrawer()
//关闭抽屉
wearableActionDrawerView.controller.closeDrawer()
//设置抽屉菜单的点击事件
wearableActionDrawerView.setOnMenuItemClickListener {
Toast.makeText(this@MainActivity,"点击了${it.title}",Toast.LENGTH_SHORT).show()
true
}
}
结语:
手表开发和Android开发相似度非常之高,所以强烈推荐Android开发者尝试一下这个新领域,虽然WearOS推出至今已有六个年头,但是国内厂商近两年才开始适配并开始生产,未来发展空间可期。
最后我还有一句话要说:
你,一会看我,一会看云。我觉得,你看我时很远,你看云时很近
顾城《远和近》
本文地址:https://blog.csdn.net/WitheredSkull/article/details/107958870