Skip to content

Commit 38ca4cd

Browse files
committed
modify statusbar ui
1 parent 34e1a1d commit 38ca4cd

File tree

10 files changed

+71
-12
lines changed

10 files changed

+71
-12
lines changed

app/src/main/AndroidManifest.xml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@
2020
<category android:name="android.intent.category.LAUNCHER" />
2121
</intent-filter>
2222
</activity>
23-
<activity android:name=".HostRegisterActivity" />
23+
<activity
24+
android:name=".HostRegisterActivity"
25+
android:theme="@style/AppCompatThemeHost" />
2426
</application>
2527
</manifest>
-84.5 KB
Binary file not shown.

app/src/main/java/com/malin/hook/HostRegisterActivity.kt

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import android.view.Gravity
88
import android.widget.RelativeLayout
99
import android.widget.TextView
1010
import androidx.appcompat.app.AppCompatActivity
11+
import androidx.core.view.WindowCompat
1112

1213
@SuppressLint("SetTextI18n")
1314
class HostRegisterActivity : AppCompatActivity() {
@@ -24,6 +25,15 @@ class HostRegisterActivity : AppCompatActivity() {
2425
relativeLayout.addView(textView)
2526

2627
setContentView(relativeLayout)
28+
supportActionBar?.hide()
29+
lightStatus()
30+
}
31+
32+
private fun lightStatus() {
33+
val window = window ?: return
34+
val decorView = window.decorView
35+
val controller = WindowCompat.getInsetsController(window, decorView)
36+
controller.isAppearanceLightStatusBars = true
2737
}
2838

2939
override fun onStart() {

app/src/main/java/com/malin/hook/MainActivity.kt

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import android.widget.Button
1010
import android.widget.ImageView
1111
import androidx.annotation.IdRes
1212
import androidx.appcompat.app.AppCompatActivity
13+
import androidx.core.view.WindowCompat
1314

1415
class MainActivity : AppCompatActivity(), View.OnClickListener {
1516

@@ -21,6 +22,8 @@ class MainActivity : AppCompatActivity(), View.OnClickListener {
2122
override fun onCreate(savedInstanceState: Bundle?) {
2223
super.onCreate(savedInstanceState)
2324
setContentView(R.layout.activity_main)
25+
supportActionBar?.hide()
26+
lightStatus()
2427
initView()
2528
initListener()
2629
initLoadPluginResourceImg()
@@ -30,6 +33,13 @@ class MainActivity : AppCompatActivity(), View.OnClickListener {
3033
mIvPluginRes = findViewById(R.id.iv_plugin_img)
3134
}
3235

36+
private fun lightStatus() {
37+
val window = window ?: return
38+
val decorView = window.decorView
39+
val controller = WindowCompat.getInsetsController(window, decorView)
40+
controller.isAppearanceLightStatusBars = true
41+
}
42+
3343
private fun <T : View> Activity.bindView(@IdRes res: Int): Lazy<T> {
3444
return lazy { findViewById(res) }
3545
}

app/src/main/java/com/malin/hook/TargetActivity.kt

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,13 @@ package com.malin.hook
22

33
import android.annotation.SuppressLint
44
import android.app.Activity
5+
import android.graphics.Color
56
import android.os.Bundle
67
import android.util.Log
78
import android.view.Gravity
89
import android.widget.RelativeLayout
910
import android.widget.TextView
11+
import androidx.core.view.WindowCompat
1012

1113
/**
1214
* 宿主中未注册的Activity
@@ -20,8 +22,17 @@ class TargetActivity : Activity() {
2022
relativeLayout.gravity = Gravity.CENTER
2123
val textView = TextView(this)
2224
textView.text = "宿主中未注册的TargetActivity,启动成功!"
25+
textView.setTextColor(Color.parseColor("#000000"))
2326
relativeLayout.addView(textView)
2427
setContentView(relativeLayout)
28+
lightStatus()
29+
}
30+
31+
private fun lightStatus() {
32+
val window = window ?: return
33+
val decorView = window.decorView
34+
val controller = WindowCompat.getInsetsController(window, decorView)
35+
controller.isAppearanceLightStatusBars = true
2536
}
2637

2738
override fun onStart() {

app/src/main/java/com/malin/hook/TargetAppCompatActivity.kt

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import android.view.Gravity
88
import android.widget.RelativeLayout
99
import android.widget.TextView
1010
import androidx.appcompat.app.AppCompatActivity
11+
import androidx.core.view.WindowCompat
1112

1213
/**
1314
* 宿主中未注册的AppCompatActivity类型的Activity
@@ -24,6 +25,15 @@ class TargetAppCompatActivity : AppCompatActivity() {
2425
textView.setTextColor(Color.parseColor("#000000"))
2526
relativeLayout.addView(textView)
2627
setContentView(relativeLayout)
28+
supportActionBar?.hide()
29+
lightStatus()
30+
}
31+
32+
private fun lightStatus() {
33+
val window = window ?: return
34+
val decorView = window.decorView
35+
val controller = WindowCompat.getInsetsController(window, decorView)
36+
controller.isAppearanceLightStatusBars = true
2737
}
2838

2939
override fun onStart() {

app/src/main/res/values-v23/styles.xml

Lines changed: 0 additions & 9 deletions
This file was deleted.

app/src/main/res/values/styles.xml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
<resources>
2-
<style name="AppCompatThemeHost" parent="Theme.AppCompat.Light.DarkActionBar">
2+
3+
<style name="AppCompatThemeHost" parent="Theme.AppCompat.Light.NoActionBar">
34
<item name="colorPrimary">@color/colorRed</item>
45
<item name="colorPrimaryDark">@color/colorRed</item>
56
<item name="colorAccent">@color/colorRed</item>

pluginapk/src/main/java/com/malin/plugin/PluginActivity.kt

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,14 @@ package com.malin.plugin
33
import android.annotation.SuppressLint
44
import android.app.Activity
55
import android.content.res.Resources
6+
import android.graphics.Color
67
import android.os.Bundle
78
import android.util.Log
89
import android.view.Gravity
910
import android.widget.ImageView
1011
import android.widget.LinearLayout
1112
import android.widget.TextView
13+
import androidx.core.view.WindowCompat
1214

1315
@SuppressLint("SetTextI18n")
1416
class PluginActivity : Activity() {
@@ -39,7 +41,9 @@ class PluginActivity : Activity() {
3941
linearLayout.addView(imageView, layoutParams)
4042

4143
val textView = TextView(this)
42-
textView.text = "插件APK使用自己的Resources加载图片\n 启动插件APK中的PluginActivity,成功!"
44+
textView.text =
45+
"插件APK使用自己的Resources加载图片\n 启动插件APK中的PluginActivity,成功!"
46+
textView.setTextColor(Color.parseColor("#000000"))
4347
textView.gravity = Gravity.CENTER
4448
linearLayout.addView(textView)
4549
} else {
@@ -49,6 +53,14 @@ class PluginActivity : Activity() {
4953
linearLayout.addView(textView)
5054
}
5155
setContentView(linearLayout)
56+
lightStatus()
57+
}
58+
59+
private fun lightStatus() {
60+
val window = window ?: return
61+
val decorView = window.decorView
62+
val controller = WindowCompat.getInsetsController(window, decorView)
63+
controller.isAppearanceLightStatusBars = true
5264
}
5365

5466
override fun onStart() {

pluginapk/src/main/java/com/malin/plugin/PluginAppCompatActivity.kt

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import android.os.Bundle
55
import android.util.Log
66
import android.view.LayoutInflater
77
import android.view.View
8+
import androidx.core.view.WindowCompat
89

910
@SuppressLint("SetTextI18n")
1011
class PluginAppCompatActivity : BaseActivity() {
@@ -30,7 +31,18 @@ class PluginAppCompatActivity : BaseActivity() {
3031
setTheme(theme)
3132
LayoutInflater.from(this).inflate(R.layout.plugin_activity, null)
3233
}
34+
3335
setContentView(rootView)
36+
supportActionBar?.hide()
37+
lightStatus()
38+
}
39+
40+
41+
private fun lightStatus() {
42+
val window = window ?: return
43+
val decorView = window.decorView
44+
val controller = WindowCompat.getInsetsController(window, decorView)
45+
controller.isAppearanceLightStatusBars = true
3446
}
3547

3648
override fun onStart() {

0 commit comments

Comments
 (0)