如何在Android Pie AOSP中修改状态栏?我想添加一些自定义图标以及现有图标(如电池,网络信号等)。我也想知道我必须编辑哪些文件才能以编程方式添加和删除快速设置图块。
答案 0 :(得分:1)
鉴于您的问题,我认为您是在谈论“快速设置”图块。
要制作“快速设置”图块,您的类必须扩展TileService:
public class HSTileService extends TileService
。
TileService有几种必须实现的方法:
public void onClick()
,public void onTileRemoved()
,public void onTileAdded()
,public void onStartListening()
和public void onStopListening()
。
onStartListening
,而当视图离开时将调用onStopListening
。所有这些方法必须首先调用super.<method_name>
。
要获取您操纵以更改图块状态的QSTile对象,请使用
Tile tile = getQsTile();
要设置状态,请使用tile.setState()
,它以Tile.STATE_ACTIVE
,Tile.STATE_INACTIVE
或Tile.STATE_DISABLED
作为参数。
更改磁贴的状态后,请确保调用tile.updateTile()
或它不会更新。
要获取图块状态,请使用tile.getState()
最后,您需要以下导入:
import android.app.ActivityManager;
import android.content.Context;
import android.graphics.drawable.Icon;
import android.os.Build;
import android.service.quicksettings.Tile;
import android.service.quicksettings.TileService;
import android.content.Intent;
import android.util.Log;
如果您需要进一步的帮助,请注意,所有这些以及更多内容都可以在AOSP文档以及以下位置找到:https://medium.com/androiddevelopers/quick-settings-tiles-e3c22daf93a8