Android增加快速设置,Android Q(10) SystemUI添加快速设置按钮

1、新建TestTile类并继承QSTileImpl,主要作用就是该快速设置按钮的实现类,该类需要实现具体功能。该类具体怎么写可以参考tiles同级目录下其它tile的写法。

文件路径:LINUX/android/frameworks/base/packages/SystemUI/src/com/android/systemui/qs/tiles/TestTile.java

2、在QSFactoryImpl中配置TestTile。

文件路径:LINUX/android/frameworks/base/packages/SystemUI/src/com/android/systemui/qs/tileimpl/QSFactoryImpl.java

(1)导入TestTile包:

import com.android.systemui.qs.tiles.TestTile;

(2)声明Provider泛型对象

private final ProvidermTestTileProvider;

(3)QSFactoryImpl的构造方法中添加testTileProvider参数,并初始化mTestTileProvider对象

@Inject

public QSFactoryImpl(ProviderwifiTileProvider,

ProviderbluetoothTileProvider,

...

ProvidertestTileProvider)

mWifiTileProvider = wifiTileProvider;

mBluetoothTileProvider = bluetoothTileProvider;

...

mTestTileProvider = testTileProvider;

(4)在createTileInternal方法中返回TestTile对象

private QSTileImpl createTileInternal(String tileSpec) {

// Stock tiles.

switch (tileSpec) {

case "wifi":

return mWifiTileProvider.get();

case "bt":

return mBluetoothTileProvider.get();

...

case "testtile"://testtile需要在congfig文件中配置声明,后面再说明

return mTestTileProvider.get();

}

3、在config配置文件中quick_settings_tiles_default和quick_settings_tiles_stock字段里添加testtile,配置快速设置中默认显示显示TestTile。

文件路径:LINUX/android/frameworks/base/packages/SystemUI/res/values/config.xml

wifi,bt,...,testtile

wifi,...,testtile

自此,添加快速设置功能基本完成。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值