mirror of
https://github.com/LittleTurtle2333/SimplicityTools.git
synced 2026-07-12 11:21:18 +08:00
修复状态栏天气布局异常
This commit is contained in:
@@ -2,7 +2,6 @@ package com.lt2333.simplicitytools.hook.app.systemui
|
||||
|
||||
import android.view.ViewGroup
|
||||
import android.widget.TextView
|
||||
import androidx.constraintlayout.widget.ConstraintLayout
|
||||
import de.robv.android.xposed.IXposedHookLoadPackage
|
||||
import de.robv.android.xposed.XC_MethodHook
|
||||
import de.robv.android.xposed.XposedHelpers
|
||||
@@ -18,20 +17,46 @@ class NotificationWeather :IXposedHookLoadPackage {
|
||||
override fun afterHookedMethod(param: MethodHookParam) {
|
||||
val viewGroup = param.thisObject as ViewGroup
|
||||
|
||||
val layoutParams = ConstraintLayout.LayoutParams(
|
||||
ConstraintLayout.LayoutParams.WRAP_CONTENT,
|
||||
ConstraintLayout.LayoutParams.WRAP_CONTENT,
|
||||
).also {
|
||||
it.bottomToTop = viewGroup.context.resources.getIdentifier("date_time","id",viewGroup.context.packageName)
|
||||
it.startToEnd = viewGroup.context.resources.getIdentifier("big_time","id",viewGroup.context.packageName)
|
||||
it.marginStart = viewGroup.context.resources.getIdentifier("notification_panel_time_date_space","dimen",viewGroup.context.packageName)
|
||||
}
|
||||
|
||||
val layout = XposedHelpers.findClass(
|
||||
"androidx.constraintlayout.widget.ConstraintLayout\$LayoutParams",
|
||||
lpparam.classLoader
|
||||
).getConstructor(Int::class.java, Int::class.java).newInstance(
|
||||
ViewGroup.LayoutParams.WRAP_CONTENT,
|
||||
ViewGroup.LayoutParams.WRAP_CONTENT
|
||||
) as ViewGroup.MarginLayoutParams
|
||||
|
||||
XposedHelpers.setObjectField(
|
||||
layout,
|
||||
"bottomToTop",
|
||||
viewGroup.context.resources.getIdentifier(
|
||||
"date_time",
|
||||
"id",
|
||||
viewGroup.context.packageName
|
||||
)
|
||||
)
|
||||
XposedHelpers.setObjectField(
|
||||
layout,
|
||||
"startToEnd",
|
||||
viewGroup.context.resources.getIdentifier(
|
||||
"big_time",
|
||||
"id",
|
||||
viewGroup.context.packageName
|
||||
)
|
||||
)
|
||||
layout.marginStart = viewGroup.context.resources.getDimensionPixelSize(
|
||||
viewGroup.context.resources.getIdentifier(
|
||||
"notification_panel_time_date_space",
|
||||
"dimen",
|
||||
viewGroup.context.packageName
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
val textView = TextView(viewGroup.context).also {
|
||||
it.setTextAppearance(viewGroup.context.resources.getIdentifier("TextAppearance.QSControl.Date","style",viewGroup.context.packageName))
|
||||
it.text = "This is a TextView"
|
||||
//TODO:状态栏天气定位异常
|
||||
it.layoutParams = layoutParams
|
||||
it.layoutParams = layout
|
||||
}
|
||||
|
||||
viewGroup.addView(textView)
|
||||
|
||||
Reference in New Issue
Block a user