Android O 交换虚拟按键位置

本文介绍了如何在Android O中更改虚拟按键的位置。首先,关键在于修改`config_navBarLayout`配置,其次,需要在`NavigationBarInflaterView`的`getDefaultLayout`方法中添加条件判断以实现动态布局。最后,要在系统设置的显示设置中增加控制虚拟按键交换功能的选项。
摘要由CSDN通过智能技术生成

1.找到虚拟按键

   vendor/mediatek/proprietary/packages/apps/SystemUI/res/values/config.xml中定义了初始的虚拟按键位置:(若不需要控制可以在

     overlay中直接进行修改)

       <string name="config_navBarLayout" translatable="false">left[.5W],back[1WC];home;recent[1WC],right[.5W]</string>

2.找到加载虚拟按键的方法

   vendor/mediatek/proprietary/packages/apps/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarInflaterView.java中的

    getDefaultLayout方法中return mContext.getString(R.string.config_navBarLayout);

3.需要进行控制思路很简单只需要在getDefaultLayout方法中加个判断语句进行控制即可,麻烦的是在设置中加入控制选项并更新SystemUI

3.1 在设置中的显示设置加控制虚拟按键交换的选项并添加控制功能

3.1.1   在vendor/mediatek/proprietary/packages/apps/MtkSettings/res/values/arrays.xml中添加

+    <string-array name="nav_back_key_entries">
+        <item>Back key to the left </item>
+        <item>Back key to the right</item>
+    </string-array>
+
+    <string-array name="nav_back_key_values" translatable="false">
+        <item>1</item>
+        <item>2</item>
+    </string-array>
3.1.2 在vendor/mediatek/proprietary/packages/apps/MtkSettings/res/values/strings.xml中添加

+    <string name="nav_bar_key_right_title">Set back key</string>
3.1.3 在vendor/mediatek/proprietary/packages/apps/MtkSettings/res/xml/display_settings.xml中添加

+ 
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值