您的位置:首页 > 其它

L版本状态栏添加电量百分比

2015-12-10 09:45 302 查看
关于状态栏中添加电量百分比。



1, 添加view

status_bar.xml

<com.android.keyguard.AlphaOptimizedLinearLayout android:id="@+id/system_icon_area"

android:layout_width="wrap_content"

android:layout_height="match_parent"

android:orientation="horizontal"

>

<include layout="@layout/system_icons" />

<!-- add by zjx 20151205 -->

<TextView android:id="@+id/battery_level"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_gravity="center_vertical"

android:layout_marginStart="@dimen/header_battery_margin_keyguard"

android:paddingEnd="@dimen/battery_level_padding_end"

android:textColor="#ffffff"

android:textSize="@dimen/battery_level_text_size"

android:importantForAccessibility="noHideDescendants"/>

<!-- end by zjx-->

<com.android.systemui.statusbar.policy.Clock

android:id="@+id/clock"

android:textAppearance="@style/TextAppearance.StatusBar.Clock"

android:layout_width="wrap_content"

android:layout_height="match_parent"

android:singleLine="true"

android:paddingStart="7dp"

android:gravity="center_vertical|start"/>

</com.android.keyguard.AlphaOptimizedLinearLayout>

</LinearLayout>

2,修改PhoneStatusBar.java 代码:

添加代码:

....................

import java.text.NumberFormat;

.....................

PhoneStatusBar.java

BatteryController mBatteryController;

private TextView mBatteryLevel;

makeStatusBarView()方法:

...................

mBatteryController = new BatteryController(mContext);

mBatteryLevel = (TextView) mStatusBarView.findViewById(R.id.battery_level);

mBatteryController.addStateChangedCallback(new BatteryStateChangeCallback() {

@Override

public void onPowerSaveChanged() {

mHandler.post(mCheckBarModes);

if (mDozeServiceHost != null) {

mDozeServiceHost.firePowerSaveChanged(mBatteryController.isPowerSave());

}

}

@Override

public void onBatteryLevelChanged(int level, boolean pluggedIn, boolean charging) {

// noop

//add by zjx

String percentage = NumberFormat.getPercentInstance().format((double) level / 100.0);

mBatteryLevel.setText(percentage);

//end by zjx

}

});
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: