update battery icon.
authorTrillGates <williamtrillgates@gmail.com>
Mon, 2 Aug 2021 09:26:50 +0000 (17:26 +0800)
committerTrillGates <williamtrillgates@gmail.com>
Mon, 2 Aug 2021 09:26:50 +0000 (17:26 +0800)
15 files changed:
app/src/main/java/com/ic/launcher/view/BatteryView.java
app/src/main/res/layout/item_status_bar.xml
app/src/main/res/mipmap-mdpi/battery_chage_0.png
app/src/main/res/mipmap-mdpi/battery_level_0.png
app/src/main/res/mipmap-mdpi/battery_level_10.png
app/src/main/res/mipmap-mdpi/battery_level_100.png
app/src/main/res/mipmap-mdpi/battery_level_20.png
app/src/main/res/mipmap-mdpi/battery_level_40.png
app/src/main/res/mipmap-mdpi/battery_level_60.png
app/src/main/res/mipmap-mdpi/battery_level_80.png
app/src/main/res/mipmap-mdpi/battery_level_save_100.png
app/src/main/res/mipmap-mdpi/battery_level_save_20.png
app/src/main/res/mipmap-mdpi/battery_level_save_40.png
app/src/main/res/mipmap-mdpi/battery_level_save_60.png
app/src/main/res/mipmap-mdpi/battery_level_save_80.png

index 79d591d..e86a37a 100644 (file)
@@ -5,6 +5,7 @@ import android.graphics.Bitmap;
 import android.graphics.BitmapFactory;
 import android.graphics.Canvas;
 import android.graphics.Paint;
+import android.graphics.Rect;
 import android.util.AttributeSet;
 import android.view.View;
 
@@ -16,6 +17,8 @@ import com.ic.launcher.R;
 
 public class BatteryView extends View {
 
+    private final Rect mSrcRect;
+    private final Rect mDestRect;
     private int width;
     private int height;
     private int mCurrentLevel;
@@ -23,8 +26,9 @@ public class BatteryView extends View {
     private int picWidth;
     private int picHeight;
     private BitmapFactory.Options options;
-    private Bitmap chargingPic;
     private BatteryMode mCurrentMode = BatteryMode.NORMAL;
+    private int targetHeight;
+    private int targetWidth;
 
     public BatteryView(Context context) {
         this(context, null);
@@ -44,13 +48,16 @@ public class BatteryView extends View {
                 R.mipmap.battery_level_save_100, options);
         picWidth = bitmap.getWidth();
         picHeight = bitmap.getHeight();
+        targetWidth = picWidth - 10;
+        targetHeight = picHeight - 8;
+        mSrcRect = new Rect(0, 0, picWidth, picHeight);
+        mDestRect = new Rect(0, 0, targetWidth, targetHeight);
         //加载静态图片列表
         initResource();
-        chargingPic = BitmapFactory.decodeResource(getResources(), R.mipmap.charge_state, options);
     }
 
     //充电状态图标变化
-    private final int[] chargeBatteryRes = new int[6];
+    private final int[] chargeBatteryRes = new int[7];
     //普通状态图标
     private final int[] normalBatteryRes = new int[7];
     //省电模式图标
@@ -89,8 +96,8 @@ public class BatteryView extends View {
 
     @Override
     protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
-        ICLogger.d("picWidth == > " + picWidth + " picHeight == > " + picHeight);
-        setMeasuredDimension(picWidth, picHeight);
+        ICLogger.d("picWidth == > " + targetWidth + " picHeight == > " + targetHeight);
+        setMeasuredDimension(targetWidth, targetHeight);
     }
 
     private int currentDrawPic = -1;
@@ -127,7 +134,12 @@ public class BatteryView extends View {
         ICLogger.d("current index == > " + index);
         //判断是不是省电模式
         if (mCurrentMode == BatteryMode.NORMAL) {
-            currentDrawPic = normalBatteryRes[index];
+            //是否要绘制充电中的图标
+            if (isCharging) {
+                currentDrawPic = chargeBatteryRes[index];
+            } else {
+                currentDrawPic = normalBatteryRes[index];
+            }
         } else {
             currentDrawPic = saveModeBatteryRes[index];
         }
@@ -143,12 +155,7 @@ public class BatteryView extends View {
         //绘制内容
         //电量图标
         Bitmap bitmap = BitmapFactory.decodeResource(getResources(), currentDrawPic, options);
-        canvas.drawBitmap(bitmap, 0, 0, paint);
-        //是否要绘制充电中的图标
-        if (isCharging) {
-            int left = width / 2 - chargingPic.getWidth() / 2;
-            canvas.drawBitmap(chargingPic, left, 0, paint);
-        }
+        canvas.drawBitmap(bitmap, mSrcRect, mDestRect, paint);
     }
 
     private int loopIndex = 0;
@@ -171,20 +178,21 @@ public class BatteryView extends View {
     private void initResource() {
         //充电变化的图标
         chargeBatteryRes[0] = R.mipmap.battery_chage_0;
-        chargeBatteryRes[1] = R.mipmap.battery_level_20;
-        chargeBatteryRes[2] = R.mipmap.battery_level_40;
-        chargeBatteryRes[3] = R.mipmap.battery_level_60;
-        chargeBatteryRes[4] = R.mipmap.battery_level_80;
-        chargeBatteryRes[5] = R.mipmap.battery_level_100;
+        chargeBatteryRes[1] = R.mipmap.battery_chage_0;
+        chargeBatteryRes[2] = R.mipmap.battery_level_20;
+        chargeBatteryRes[3] = R.mipmap.battery_level_40;
+        chargeBatteryRes[4] = R.mipmap.battery_level_60;
+        chargeBatteryRes[5] = R.mipmap.battery_level_80;
+        chargeBatteryRes[6] = R.mipmap.battery_level_100;
         //普通状态图标
         normalBatteryRes[0] = R.mipmap.battery_level_0;
         normalBatteryRes[1] = R.mipmap.battery_level_10;
         normalBatteryRes[2] = R.mipmap.battery_level_save_20;
-        normalBatteryRes[3] = R.mipmap.battery_level_40;
-        normalBatteryRes[4] = R.mipmap.battery_level_60;
-        normalBatteryRes[5] = R.mipmap.battery_level_80;
-        normalBatteryRes[6] = R.mipmap.battery_level_100;
-        //省电模式状态图标
+        normalBatteryRes[3] = R.mipmap.battery_level_save_40;
+        normalBatteryRes[4] = R.mipmap.battery_level_save_60;
+        normalBatteryRes[5] = R.mipmap.battery_level_save_80;
+        normalBatteryRes[6] = R.mipmap.battery_level_save_100;
+        //省电模式状态图标,S123并没有提供省电模式的图
         saveModeBatteryRes[0] = R.mipmap.battery_level_0;
         saveModeBatteryRes[1] = R.mipmap.battery_level_10;
         saveModeBatteryRes[2] = R.mipmap.battery_level_save_20;
index 9b84d99..60fdbd3 100644 (file)
 
     <com.ic.launcher.view.MarqueeView
         android:id="@+id/mar_queue_view"
-        android:layout_marginLeft="10dp"
-        android:layout_marginRight="10dp"
         android:layout_width="match_parent"
         android:layout_height="match_parent"
         android:layout_centerVertical="true"
+        android:layout_marginLeft="10dp"
+        android:layout_marginRight="10dp"
         android:layout_toLeftOf="@id/battery_value"
         android:layout_toRightOf="@id/signal_view">
 
index 1333b22..20df943 100644 (file)
Binary files a/app/src/main/res/mipmap-mdpi/battery_chage_0.png and b/app/src/main/res/mipmap-mdpi/battery_chage_0.png differ
index 7344465..d3e9c4f 100644 (file)
Binary files a/app/src/main/res/mipmap-mdpi/battery_level_0.png and b/app/src/main/res/mipmap-mdpi/battery_level_0.png differ
index 7b043cb..b3d1e90 100644 (file)
Binary files a/app/src/main/res/mipmap-mdpi/battery_level_10.png and b/app/src/main/res/mipmap-mdpi/battery_level_10.png differ
index be101d7..cf8579d 100644 (file)
Binary files a/app/src/main/res/mipmap-mdpi/battery_level_100.png and b/app/src/main/res/mipmap-mdpi/battery_level_100.png differ
index 84e28a1..be30c06 100644 (file)
Binary files a/app/src/main/res/mipmap-mdpi/battery_level_20.png and b/app/src/main/res/mipmap-mdpi/battery_level_20.png differ
index a3bb84b..af7dabe 100644 (file)
Binary files a/app/src/main/res/mipmap-mdpi/battery_level_40.png and b/app/src/main/res/mipmap-mdpi/battery_level_40.png differ
index b6d054b..3a15b21 100644 (file)
Binary files a/app/src/main/res/mipmap-mdpi/battery_level_60.png and b/app/src/main/res/mipmap-mdpi/battery_level_60.png differ
index 867eb1d..d2ac5cd 100644 (file)
Binary files a/app/src/main/res/mipmap-mdpi/battery_level_80.png and b/app/src/main/res/mipmap-mdpi/battery_level_80.png differ
index b2aa1e4..6c7f0d0 100644 (file)
Binary files a/app/src/main/res/mipmap-mdpi/battery_level_save_100.png and b/app/src/main/res/mipmap-mdpi/battery_level_save_100.png differ
index 7a130ad..6bba1e6 100644 (file)
Binary files a/app/src/main/res/mipmap-mdpi/battery_level_save_20.png and b/app/src/main/res/mipmap-mdpi/battery_level_save_20.png differ
index b67cddd..5ffe959 100644 (file)
Binary files a/app/src/main/res/mipmap-mdpi/battery_level_save_40.png and b/app/src/main/res/mipmap-mdpi/battery_level_save_40.png differ
index 4e4c579..d9057be 100644 (file)
Binary files a/app/src/main/res/mipmap-mdpi/battery_level_save_60.png and b/app/src/main/res/mipmap-mdpi/battery_level_save_60.png differ
index 2fb9948..8b3fb80 100644 (file)
Binary files a/app/src/main/res/mipmap-mdpi/battery_level_save_80.png and b/app/src/main/res/mipmap-mdpi/battery_level_save_80.png differ