mirror of
https://github.com/LittleTurtle2333/SimplicityTools.git
synced 2026-07-13 20:01:17 +08:00
Compare commits
10 Commits
12183ebc7c
...
1836176853
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1836176853 | ||
|
|
06065b58c1 | ||
|
|
6f78f83da1 | ||
|
|
6f91cab9b8 | ||
|
|
ca2ffa4c3f | ||
|
|
f44f095c65 | ||
|
|
68c67d139b | ||
|
|
2b1eaf6634 | ||
|
|
c91a46cabb | ||
|
|
a7947d5a2f |
@@ -12,8 +12,8 @@ android {
|
|||||||
applicationId = "com.lt2333.simplicitytools"
|
applicationId = "com.lt2333.simplicitytools"
|
||||||
minSdk = 31
|
minSdk = 31
|
||||||
targetSdk = 32
|
targetSdk = 32
|
||||||
versionCode = 54
|
versionCode = 55
|
||||||
versionName = "1.5.3"
|
versionName = "1.5.4"
|
||||||
}
|
}
|
||||||
|
|
||||||
buildTypes {
|
buildTypes {
|
||||||
|
|||||||
@@ -498,32 +498,6 @@ class SettingsActivity : MIUIActivity() {
|
|||||||
menuButton.visibility = View.VISIBLE
|
menuButton.visibility = View.VISIBLE
|
||||||
return ArrayList<BaseView>().apply {
|
return ArrayList<BaseView>().apply {
|
||||||
add(TitleTextV(resId = R.string.statusbar))
|
add(TitleTextV(resId = R.string.statusbar))
|
||||||
add(
|
|
||||||
TextSummaryWithSwitchV(
|
|
||||||
TextSummaryV(
|
|
||||||
textId = R.string.big_mobile_type_icon
|
|
||||||
),
|
|
||||||
SwitchV("big_mobile_type_icon")
|
|
||||||
)
|
|
||||||
)
|
|
||||||
add(
|
|
||||||
TextSummaryWithSwitchV(
|
|
||||||
TextSummaryV(
|
|
||||||
textId = R.string.hide_battery_percentage_icon,
|
|
||||||
tipsId = R.string.hide_battery_percentage_icon_summary
|
|
||||||
),
|
|
||||||
SwitchV("hide_battery_percentage_icon")
|
|
||||||
)
|
|
||||||
)
|
|
||||||
add(
|
|
||||||
TextSummaryWithSwitchV(
|
|
||||||
TextSummaryV(
|
|
||||||
textId = R.string.remove_the_maximum_number_of_notification_icons,
|
|
||||||
tipsId = R.string.remove_the_maximum_number_of_notification_icons_summary
|
|
||||||
),
|
|
||||||
SwitchV("remove_the_maximum_number_of_notification_icons")
|
|
||||||
)
|
|
||||||
)
|
|
||||||
add(
|
add(
|
||||||
TextSummaryWithSwitchV(
|
TextSummaryWithSwitchV(
|
||||||
TextSummaryV(
|
TextSummaryV(
|
||||||
@@ -725,6 +699,227 @@ class SettingsActivity : MIUIActivity() {
|
|||||||
)
|
)
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
val big_mobile_type_icon_binding = getDataBinding(
|
||||||
|
SPUtils.getBoolean(
|
||||||
|
activity,
|
||||||
|
"big_mobile_type_icon",
|
||||||
|
false
|
||||||
|
)
|
||||||
|
) { view, flags, data ->
|
||||||
|
when (flags) {
|
||||||
|
1 -> (view as Switch).isEnabled = data as Boolean
|
||||||
|
2 -> view.visibility = if (data as Boolean) View.VISIBLE else View.GONE
|
||||||
|
}
|
||||||
|
}
|
||||||
|
add(
|
||||||
|
TextSummaryWithSwitchV(
|
||||||
|
TextSummaryV(
|
||||||
|
textId = R.string.big_mobile_type_icon
|
||||||
|
),
|
||||||
|
SwitchV(
|
||||||
|
"big_mobile_type_icon",
|
||||||
|
dataBindingSend = big_mobile_type_icon_binding.bindingSend
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
add(
|
||||||
|
TextSummaryWithSwitchV(
|
||||||
|
TextSummaryV(
|
||||||
|
textId = R.string.big_mobile_type_icon_bold
|
||||||
|
),
|
||||||
|
SwitchV("big_mobile_type_icon_bold", true),
|
||||||
|
dataBindingRecv = big_mobile_type_icon_binding.binding.getRecv(2)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
add(
|
||||||
|
TextSummaryArrowV(
|
||||||
|
TextSummaryV(
|
||||||
|
textId = R.string.big_mobile_type_icon_size,
|
||||||
|
onClickListener = {
|
||||||
|
MIUIDialog(activity).apply {
|
||||||
|
setTitle(R.string.big_mobile_type_icon_size)
|
||||||
|
setEditText(
|
||||||
|
"",
|
||||||
|
"${activity.getString(R.string.def)}12.5, ${activity.getString(R.string.current)}${
|
||||||
|
OwnSP.ownSP.getFloat(
|
||||||
|
"big_mobile_type_icon_size",
|
||||||
|
12.5f
|
||||||
|
)
|
||||||
|
}"
|
||||||
|
)
|
||||||
|
setLButton(textId = R.string.cancel) {
|
||||||
|
dismiss()
|
||||||
|
}
|
||||||
|
setRButton(textId = R.string.Done) {
|
||||||
|
if (getEditText() != "") {
|
||||||
|
OwnSP.ownSP.edit().run {
|
||||||
|
putFloat(
|
||||||
|
"big_mobile_type_icon_size",
|
||||||
|
getEditText().toFloat()
|
||||||
|
)
|
||||||
|
apply()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
dismiss()
|
||||||
|
}
|
||||||
|
show()
|
||||||
|
}
|
||||||
|
}), dataBindingRecv = big_mobile_type_icon_binding.binding.getRecv(2)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
add(
|
||||||
|
TextSummaryArrowV(
|
||||||
|
TextSummaryV(
|
||||||
|
textId = R.string.big_mobile_type_icon_up_and_down_position
|
||||||
|
) {
|
||||||
|
MIUIDialog(activity).apply {
|
||||||
|
setTitle(R.string.big_mobile_type_icon_up_and_down_position)
|
||||||
|
setMessage("${activity.getString(R.string.range)} -15~15")
|
||||||
|
setEditText(
|
||||||
|
"",
|
||||||
|
"${activity.getString(R.string.def)}0, ${activity.getString(R.string.current)}${
|
||||||
|
OwnSP.ownSP.getInt(
|
||||||
|
"big_mobile_type_icon_up_and_down_position",
|
||||||
|
0
|
||||||
|
)
|
||||||
|
}"
|
||||||
|
)
|
||||||
|
setLButton(textId = R.string.cancel) {
|
||||||
|
dismiss()
|
||||||
|
}
|
||||||
|
setRButton(textId = R.string.Done) {
|
||||||
|
if (getEditText().isNotEmpty()) {
|
||||||
|
try {
|
||||||
|
val value = getEditText().toInt()
|
||||||
|
if (value in (-15..15)) {
|
||||||
|
OwnSP.ownSP.edit().run {
|
||||||
|
putInt(
|
||||||
|
"big_mobile_type_icon_up_and_down_position",
|
||||||
|
value
|
||||||
|
)
|
||||||
|
apply()
|
||||||
|
}
|
||||||
|
dismiss()
|
||||||
|
return@setRButton
|
||||||
|
}
|
||||||
|
} catch (_: Throwable) {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Toast.makeText(
|
||||||
|
activity,
|
||||||
|
R.string.input_error,
|
||||||
|
Toast.LENGTH_SHORT
|
||||||
|
).show()
|
||||||
|
}
|
||||||
|
show()
|
||||||
|
}
|
||||||
|
}, dataBindingRecv = big_mobile_type_icon_binding.binding.getRecv(2)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
add(
|
||||||
|
TextSummaryArrowV(
|
||||||
|
TextSummaryV(
|
||||||
|
textId = R.string.big_mobile_type_icon_left_and_right_margins
|
||||||
|
) {
|
||||||
|
MIUIDialog(activity).apply {
|
||||||
|
setTitle(R.string.big_mobile_type_icon_left_and_right_margins)
|
||||||
|
setMessage("${activity.getString(R.string.range)} 0~30")
|
||||||
|
setEditText(
|
||||||
|
"",
|
||||||
|
"${activity.getString(R.string.def)}0, ${activity.getString(R.string.current)}${
|
||||||
|
OwnSP.ownSP.getInt(
|
||||||
|
"big_mobile_type_icon_left_and_right_margins",
|
||||||
|
0
|
||||||
|
)
|
||||||
|
}"
|
||||||
|
)
|
||||||
|
setLButton(textId = R.string.cancel) {
|
||||||
|
dismiss()
|
||||||
|
}
|
||||||
|
setRButton(textId = R.string.Done) {
|
||||||
|
if (getEditText().isNotEmpty()) {
|
||||||
|
try {
|
||||||
|
val value = getEditText().toInt()
|
||||||
|
if (value in (0..30)) {
|
||||||
|
OwnSP.ownSP.edit().run {
|
||||||
|
putInt(
|
||||||
|
"big_mobile_type_icon_left_and_right_margins",
|
||||||
|
value
|
||||||
|
)
|
||||||
|
apply()
|
||||||
|
}
|
||||||
|
dismiss()
|
||||||
|
return@setRButton
|
||||||
|
}
|
||||||
|
} catch (_: Throwable) {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Toast.makeText(
|
||||||
|
activity,
|
||||||
|
R.string.input_error,
|
||||||
|
Toast.LENGTH_SHORT
|
||||||
|
).show()
|
||||||
|
}
|
||||||
|
show()
|
||||||
|
}
|
||||||
|
}, dataBindingRecv = big_mobile_type_icon_binding.binding.getRecv(2)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
add(
|
||||||
|
TextSummaryWithSwitchV(
|
||||||
|
TextSummaryV(
|
||||||
|
textId = R.string.remove_the_maximum_number_of_notification_icons,
|
||||||
|
tipsId = R.string.remove_the_maximum_number_of_notification_icons_summary
|
||||||
|
),
|
||||||
|
SwitchV("remove_the_maximum_number_of_notification_icons")
|
||||||
|
)
|
||||||
|
)
|
||||||
|
add(
|
||||||
|
TextSummaryArrowV(
|
||||||
|
TextSummaryV(
|
||||||
|
textId = R.string.battery_percentage_font_size,
|
||||||
|
onClickListener = {
|
||||||
|
MIUIDialog(activity).apply {
|
||||||
|
setTitle(R.string.battery_percentage_font_size)
|
||||||
|
setMessage(R.string.zero_do_no_change)
|
||||||
|
setEditText(
|
||||||
|
"",
|
||||||
|
"${activity.getString(R.string.current)}${
|
||||||
|
OwnSP.ownSP.getFloat(
|
||||||
|
"battery_percentage_font_size",
|
||||||
|
0f
|
||||||
|
)
|
||||||
|
}"
|
||||||
|
)
|
||||||
|
setLButton(textId = R.string.cancel) {
|
||||||
|
dismiss()
|
||||||
|
}
|
||||||
|
setRButton(textId = R.string.Done) {
|
||||||
|
if (getEditText() != "") {
|
||||||
|
OwnSP.ownSP.edit().run {
|
||||||
|
putFloat(
|
||||||
|
"battery_percentage_font_size",
|
||||||
|
getEditText().toFloat()
|
||||||
|
)
|
||||||
|
apply()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
dismiss()
|
||||||
|
}
|
||||||
|
show()
|
||||||
|
}
|
||||||
|
})
|
||||||
|
)
|
||||||
|
)
|
||||||
|
add(
|
||||||
|
TextSummaryWithSwitchV(
|
||||||
|
TextSummaryV(
|
||||||
|
textId = R.string.hide_battery_percentage_icon,
|
||||||
|
tipsId = R.string.hide_battery_percentage_icon_summary
|
||||||
|
),
|
||||||
|
SwitchV("hide_battery_percentage_icon")
|
||||||
|
)
|
||||||
|
)
|
||||||
add(LineV())
|
add(LineV())
|
||||||
add(TitleTextV(resId = R.string.status_bar_network_speed))
|
add(TitleTextV(resId = R.string.status_bar_network_speed))
|
||||||
add(
|
add(
|
||||||
|
|||||||
@@ -60,6 +60,8 @@ class SystemUI : IXposedHookLoadPackage {
|
|||||||
DoubleLineNetworkSpeed().handleLoadPackage(lpparam)
|
DoubleLineNetworkSpeed().handleLoadPackage(lpparam)
|
||||||
//大移动类型
|
//大移动类型
|
||||||
StatusBarBigMobileTypeIcon().handleLoadPackage(lpparam)
|
StatusBarBigMobileTypeIcon().handleLoadPackage(lpparam)
|
||||||
|
//电量百分比
|
||||||
|
BatteryPercentage().handleLoadPackage(lpparam)
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,24 @@
|
|||||||
|
package com.lt2333.simplicitytools.hook.app.systemui
|
||||||
|
|
||||||
|
import android.util.TypedValue
|
||||||
|
import android.widget.TextView
|
||||||
|
import com.lt2333.simplicitytools.util.XSPUtils
|
||||||
|
import com.lt2333.simplicitytools.util.getObjectField
|
||||||
|
import com.lt2333.simplicitytools.util.hookAfterMethod
|
||||||
|
import de.robv.android.xposed.IXposedHookLoadPackage
|
||||||
|
import de.robv.android.xposed.callbacks.XC_LoadPackage
|
||||||
|
|
||||||
|
class BatteryPercentage : IXposedHookLoadPackage {
|
||||||
|
override fun handleLoadPackage(lpparam: XC_LoadPackage.LoadPackageParam) {
|
||||||
|
val size = XSPUtils.getFloat("battery_percentage_font_size", 0f)
|
||||||
|
if (size == 0f) return
|
||||||
|
"com.android.systemui.statusbar.views.MiuiBatteryMeterView".hookAfterMethod(
|
||||||
|
lpparam.classLoader,
|
||||||
|
"updateResources"
|
||||||
|
) {
|
||||||
|
(it.thisObject.getObjectField("mBatteryPercentView") as TextView).setTextSize(
|
||||||
|
TypedValue.COMPLEX_UNIT_DIP, size
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -9,6 +9,7 @@ import android.view.ViewGroup
|
|||||||
import android.widget.ImageView
|
import android.widget.ImageView
|
||||||
import android.widget.LinearLayout
|
import android.widget.LinearLayout
|
||||||
import android.widget.TextView
|
import android.widget.TextView
|
||||||
|
import com.lt2333.simplicitytools.util.XSPUtils
|
||||||
import com.lt2333.simplicitytools.util.hasEnable
|
import com.lt2333.simplicitytools.util.hasEnable
|
||||||
import com.lt2333.simplicitytools.util.hookAfterMethod
|
import com.lt2333.simplicitytools.util.hookAfterMethod
|
||||||
import com.lt2333.simplicitytools.util.hookBeforeMethod
|
import com.lt2333.simplicitytools.util.hookBeforeMethod
|
||||||
@@ -18,6 +19,11 @@ import de.robv.android.xposed.callbacks.XC_LoadPackage
|
|||||||
|
|
||||||
|
|
||||||
class StatusBarBigMobileTypeIcon : IXposedHookLoadPackage {
|
class StatusBarBigMobileTypeIcon : IXposedHookLoadPackage {
|
||||||
|
val upAndDownPosition = XSPUtils.getInt("big_mobile_type_icon_up_and_down_position", 0)
|
||||||
|
val leftAndRightMargin = XSPUtils.getInt("big_mobile_type_icon_left_and_right_margins", 0)
|
||||||
|
val isBold = XSPUtils.getBoolean("big_mobile_type_icon_bold", true)
|
||||||
|
val size = XSPUtils.getFloat("big_mobile_type_icon_size", 12.5f)
|
||||||
|
|
||||||
override fun handleLoadPackage(lpparam: XC_LoadPackage.LoadPackageParam) {
|
override fun handleLoadPackage(lpparam: XC_LoadPackage.LoadPackageParam) {
|
||||||
hasEnable("big_mobile_type_icon") {
|
hasEnable("big_mobile_type_icon") {
|
||||||
"com.android.systemui.statusbar.StatusBarMobileView".hookAfterMethod(
|
"com.android.systemui.statusbar.StatusBarMobileView".hookAfterMethod(
|
||||||
@@ -63,10 +69,13 @@ class StatusBarBigMobileTypeIcon : IXposedHookLoadPackage {
|
|||||||
val newLinearLayoutLP = LinearLayout.LayoutParams(
|
val newLinearLayoutLP = LinearLayout.LayoutParams(
|
||||||
LinearLayout.LayoutParams.WRAP_CONTENT,
|
LinearLayout.LayoutParams.WRAP_CONTENT,
|
||||||
LinearLayout.LayoutParams.MATCH_PARENT
|
LinearLayout.LayoutParams.MATCH_PARENT
|
||||||
)
|
).also {
|
||||||
|
|
||||||
|
}
|
||||||
val newLinearlayout = LinearLayout(context).also {
|
val newLinearlayout = LinearLayout(context).also {
|
||||||
it.layoutParams = newLinearLayoutLP
|
it.layoutParams = newLinearLayoutLP
|
||||||
it.id = mobile_container_left_ID
|
it.id = mobile_container_left_ID
|
||||||
|
it.setPadding(leftAndRightMargin, 0, leftAndRightMargin, 0)
|
||||||
}
|
}
|
||||||
XposedHelpers.setObjectField(it.thisObject, "mMobileLeftContainer", newLinearlayout)
|
XposedHelpers.setObjectField(it.thisObject, "mMobileLeftContainer", newLinearlayout)
|
||||||
RightParentLayout.addView(
|
RightParentLayout.addView(
|
||||||
@@ -86,10 +95,13 @@ class StatusBarBigMobileTypeIcon : IXposedHookLoadPackage {
|
|||||||
LinearLayout.LayoutParams.WRAP_CONTENT
|
LinearLayout.LayoutParams.WRAP_CONTENT
|
||||||
).also {
|
).also {
|
||||||
it.gravity = Gravity.CENTER_VERTICAL
|
it.gravity = Gravity.CENTER_VERTICAL
|
||||||
|
it.topMargin = upAndDownPosition
|
||||||
}
|
}
|
||||||
mobile_type.also {
|
mobile_type.also {
|
||||||
it.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 12.5F)
|
it.setTextSize(TypedValue.COMPLEX_UNIT_DIP, size)
|
||||||
|
if (isBold) {
|
||||||
it.typeface = Typeface.DEFAULT_BOLD
|
it.typeface = Typeface.DEFAULT_BOLD
|
||||||
|
}
|
||||||
it.layoutParams = mobile_type_lp
|
it.layoutParams = mobile_type_lp
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -38,11 +38,17 @@ class StatusBarTimeCustomization : IXposedHookLoadPackage {
|
|||||||
override fun handleLoadPackage(lpparam: XC_LoadPackage.LoadPackageParam) {
|
override fun handleLoadPackage(lpparam: XC_LoadPackage.LoadPackageParam) {
|
||||||
if (isOpen) {
|
if (isOpen) {
|
||||||
var c: Context? = null
|
var c: Context? = null
|
||||||
val miuiClockClass = "com.android.systemui.statusbar.views.MiuiClock".findClass(lpparam.classLoader)
|
val miuiClockClass =
|
||||||
miuiClockClass.hookAfterConstructor(Context::class.java, AttributeSet::class.java, Integer.TYPE) {
|
"com.android.systemui.statusbar.views.MiuiClock".findClass(lpparam.classLoader)
|
||||||
|
miuiClockClass.hookAfterConstructor(
|
||||||
|
Context::class.java,
|
||||||
|
AttributeSet::class.java,
|
||||||
|
Integer.TYPE
|
||||||
|
) {
|
||||||
try {
|
try {
|
||||||
c = it.args[0] as Context
|
c = it.args[0] as Context
|
||||||
val textV = it.thisObject as TextView
|
val textV = it.thisObject as TextView
|
||||||
|
if (textV.resources.getResourceEntryName(textV.id) != "clock") return@hookAfterConstructor
|
||||||
textV.isSingleLine = false
|
textV.isSingleLine = false
|
||||||
if (isDoubleLine) {
|
if (isDoubleLine) {
|
||||||
str = "\n"
|
str = "\n"
|
||||||
@@ -51,7 +57,7 @@ class StatusBarTimeCustomization : IXposedHookLoadPackage {
|
|||||||
clock_double_line_size = getClockDoubleSize.toFloat()
|
clock_double_line_size = getClockDoubleSize.toFloat()
|
||||||
}
|
}
|
||||||
textV.setTextSize(TypedValue.COMPLEX_UNIT_DIP, clock_double_line_size)
|
textV.setTextSize(TypedValue.COMPLEX_UNIT_DIP, clock_double_line_size)
|
||||||
textV.setLineSpacing(0F,0.8F)
|
textV.setLineSpacing(0F, 0.8F)
|
||||||
} else {
|
} else {
|
||||||
if (getClockSize != 0) {
|
if (getClockSize != 0) {
|
||||||
val clock_size = getClockSize.toFloat()
|
val clock_size = getClockSize.toFloat()
|
||||||
@@ -68,7 +74,6 @@ class StatusBarTimeCustomization : IXposedHookLoadPackage {
|
|||||||
Handler(textV.context.mainLooper).post(r)
|
Handler(textV.context.mainLooper).post(r)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (textV.resources.getResourceEntryName(textV.id) == "clock")
|
|
||||||
Timer().scheduleAtFixedRate(T(), 1000 - System.currentTimeMillis() % 1000, 1000)
|
Timer().scheduleAtFixedRate(T(), 1000 - System.currentTimeMillis() % 1000, 1000)
|
||||||
} catch (e: java.lang.Exception) {
|
} catch (e: java.lang.Exception) {
|
||||||
}
|
}
|
||||||
@@ -77,9 +82,13 @@ class StatusBarTimeCustomization : IXposedHookLoadPackage {
|
|||||||
try {
|
try {
|
||||||
val textV = it.thisObject as TextView
|
val textV = it.thisObject as TextView
|
||||||
if (textV.resources.getResourceEntryName(textV.id) == "clock") {
|
if (textV.resources.getResourceEntryName(textV.id) == "clock") {
|
||||||
val t = Settings.System.getString(c!!.contentResolver, Settings.System.TIME_12_24)
|
val t = Settings.System.getString(
|
||||||
|
c!!.contentResolver,
|
||||||
|
Settings.System.TIME_12_24
|
||||||
|
)
|
||||||
|
val is24 = t == "24"
|
||||||
now_time = Calendar.getInstance().time
|
now_time = Calendar.getInstance().time
|
||||||
textV.text = getDate(c!!, t) + str + getTime(c!!, t)
|
textV.text = getDate(c!!) + str + getTime(c!!, is24)
|
||||||
}
|
}
|
||||||
} catch (e: Exception) {
|
} catch (e: Exception) {
|
||||||
}
|
}
|
||||||
@@ -89,7 +98,7 @@ class StatusBarTimeCustomization : IXposedHookLoadPackage {
|
|||||||
|
|
||||||
|
|
||||||
@SuppressLint("SimpleDateFormat")
|
@SuppressLint("SimpleDateFormat")
|
||||||
private fun getDate(context: Context, t: String): String {
|
private fun getDate(context: Context): String {
|
||||||
var datePattern = ""
|
var datePattern = ""
|
||||||
val isZh = isZh(context)
|
val isZh = isZh(context)
|
||||||
|
|
||||||
@@ -130,10 +139,10 @@ class StatusBarTimeCustomization : IXposedHookLoadPackage {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@SuppressLint("SimpleDateFormat")
|
@SuppressLint("SimpleDateFormat")
|
||||||
private fun getTime(context: Context, t: String): String {
|
private fun getTime(context: Context, t: Boolean): String {
|
||||||
var timePattern = ""
|
var timePattern = ""
|
||||||
val isZh = isZh(context)
|
val isZh = isZh(context)
|
||||||
timePattern += if (t == "24") "HH:mm" else "h:mm"
|
timePattern += if (t) "HH:mm" else "h:mm"
|
||||||
if (isSecond) timePattern += ":ss"
|
if (isSecond) timePattern += ":ss"
|
||||||
timePattern = SimpleDateFormat(timePattern).format(now_time)
|
timePattern = SimpleDateFormat(timePattern).format(now_time)
|
||||||
if (isZh) timePattern = getPeriod(isZh) + timePattern else timePattern += getPeriod(isZh)
|
if (isZh) timePattern = getPeriod(isZh) + timePattern else timePattern += getPeriod(isZh)
|
||||||
|
|||||||
@@ -178,4 +178,12 @@
|
|||||||
<string name="right">Derecha</string>
|
<string name="right">Derecha</string>
|
||||||
<string name="big_mobile_type_icon">Icono grande de red móvil</string>
|
<string name="big_mobile_type_icon">Icono grande de red móvil</string>
|
||||||
<string name="can_notification_slide">Hacer que todas las notificaciones puedan deslizarse hacia una ventana pequeña</string>
|
<string name="can_notification_slide">Hacer que todas las notificaciones puedan deslizarse hacia una ventana pequeña</string>
|
||||||
|
<string name="battery_percentage_font_size">Tamaño de la fuente del porcentaje de batería</string>
|
||||||
|
<string name="zero_do_no_change">0: sin cambios</string>
|
||||||
|
<string name="big_mobile_type_icon_size">Tamaño del icono red móvil grande</string>
|
||||||
|
<string name="big_mobile_type_icon_bold">Icono red móvil grande en negrita</string>
|
||||||
|
<string name="big_mobile_type_icon_up_and_down_position">Posición arriba y abajo del icono red móvil grande</string>
|
||||||
|
<string name="input_error">Error de entrada</string>
|
||||||
|
<string name="range">Rango: </string>
|
||||||
|
<string name="big_mobile_type_icon_left_and_right_margins">Margen izquierdo y derecho del icono de red móvil grande</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
|||||||
@@ -182,4 +182,12 @@
|
|||||||
<string name="right">Вправо</string>
|
<string name="right">Вправо</string>
|
||||||
<string name="big_mobile_type_icon">Большая иконка типа сети</string>
|
<string name="big_mobile_type_icon">Большая иконка типа сети</string>
|
||||||
<string name="can_notification_slide">Сделать так, чтобы все уведомления можно было сдвинуть в всплывающее окно</string>
|
<string name="can_notification_slide">Сделать так, чтобы все уведомления можно было сдвинуть в всплывающее окно</string>
|
||||||
|
<string name="battery_percentage_font_size">Размер шрифта процентов заряда батареи</string>
|
||||||
|
<string name="zero_do_no_change">0: не изменять</string>
|
||||||
|
<string name="big_mobile_type_icon_size">Размер большого значка типа сети</string>
|
||||||
|
<string name="big_mobile_type_icon_bold">Жирный шрифт большого значка типа сети</string>
|
||||||
|
<string name="big_mobile_type_icon_up_and_down_position">Регулировка по высоте типа сети</string>
|
||||||
|
<string name="input_error">Ошибка ввода</string>
|
||||||
|
<string name="range">Диапазон: </string>
|
||||||
|
<string name="big_mobile_type_icon_left_and_right_margins">Положение типа сети по горизонтали</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
|||||||
@@ -178,4 +178,13 @@
|
|||||||
<string name="left">Sol</string>
|
<string name="left">Sol</string>
|
||||||
<string name="right">Sağ </string>
|
<string name="right">Sağ </string>
|
||||||
<string name="big_mobile_type_icon">Büyük mobil ikon tipi</string>
|
<string name="big_mobile_type_icon">Büyük mobil ikon tipi</string>
|
||||||
|
<string name="can_notification_slide">Tüm bildirimlerin küçük pencereye kaydırılabilmesini sağlayın</string>
|
||||||
|
<string name="battery_percentage_font_size">Pil yüzdesi yazı tipi boyutu</string>
|
||||||
|
<string name="zero_do_no_change">0: değiştirme</string>
|
||||||
|
<string name="big_mobile_type_icon_size">Büyük mobil tip simge boyutu</string>
|
||||||
|
<string name="big_mobile_type_icon_bold">Büyük mobil tip simgesi kalın</string>
|
||||||
|
<string name="big_mobile_type_icon_up_and_down_position">Büyük mobil tip simgesi yukarı ve aşağı konumu</string>
|
||||||
|
<string name="input_error">Giriş hatası</string>
|
||||||
|
<string name="range">Menzil:</string>
|
||||||
|
<string name="big_mobile_type_icon_left_and_right_margins">Büyük mobil tip simgesi sol ve sağ kenar boşlukları</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
|||||||
@@ -178,4 +178,12 @@
|
|||||||
<string name="right">右边</string>
|
<string name="right">右边</string>
|
||||||
<string name="big_mobile_type_icon">大移动类型图标</string>
|
<string name="big_mobile_type_icon">大移动类型图标</string>
|
||||||
<string name="can_notification_slide">强制允许全部通知可使用小窗</string>
|
<string name="can_notification_slide">强制允许全部通知可使用小窗</string>
|
||||||
|
<string name="battery_percentage_font_size">电池百分比字体大小</string>
|
||||||
|
<string name="zero_do_no_change">0: 不更改</string>
|
||||||
|
<string name="big_mobile_type_icon_size">大移动类型图标大小</string>
|
||||||
|
<string name="big_mobile_type_icon_bold">大移动类型图标加粗</string>
|
||||||
|
<string name="big_mobile_type_icon_up_and_down_position">大移动类型图标上下位置</string>
|
||||||
|
<string name="input_error">输入错误</string>
|
||||||
|
<string name="range">范围:</string>
|
||||||
|
<string name="big_mobile_type_icon_left_and_right_margins">大移动类型图标左右边距</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
|||||||
@@ -178,4 +178,12 @@
|
|||||||
<string name="right">置右</string>
|
<string name="right">置右</string>
|
||||||
<string name="big_mobile_type_icon">大行動網路圖示</string>
|
<string name="big_mobile_type_icon">大行動網路圖示</string>
|
||||||
<string name="can_notification_slide">強制允許全部通知可使用小窗</string>
|
<string name="can_notification_slide">強制允許全部通知可使用小窗</string>
|
||||||
|
<string name="battery_percentage_font_size">電量百分比字體大小</string>
|
||||||
|
<string name="zero_do_no_change">0:不修改</string>
|
||||||
|
<string name="big_mobile_type_icon_size">大行動網路圖示大小</string>
|
||||||
|
<string name="big_mobile_type_icon_bold">大行動網路圖示加粗</string>
|
||||||
|
<string name="big_mobile_type_icon_up_and_down_position">大行動網路圖示上下位置</string>
|
||||||
|
<string name="input_error">輸入錯誤</string>
|
||||||
|
<string name="range">範圍:</string>
|
||||||
|
<string name="big_mobile_type_icon_left_and_right_margins">大行動網路圖示左右邊距</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
|||||||
@@ -182,4 +182,12 @@
|
|||||||
<string name="right">Right</string>
|
<string name="right">Right</string>
|
||||||
<string name="big_mobile_type_icon">Big Mobile Type Icon</string>
|
<string name="big_mobile_type_icon">Big Mobile Type Icon</string>
|
||||||
<string name="can_notification_slide">Make all notification can be slide to small window</string>
|
<string name="can_notification_slide">Make all notification can be slide to small window</string>
|
||||||
|
<string name="battery_percentage_font_size">Battery percentage font size</string>
|
||||||
|
<string name="zero_do_no_change">0: do not change</string>
|
||||||
|
<string name="big_mobile_type_icon_size">Big mobile type icon size</string>
|
||||||
|
<string name="big_mobile_type_icon_bold">Big mobile type icon bold</string>
|
||||||
|
<string name="big_mobile_type_icon_up_and_down_position">Big mobile type icon up and down position</string>
|
||||||
|
<string name="input_error">Input error</string>
|
||||||
|
<string name="range">Range: </string>
|
||||||
|
<string name="big_mobile_type_icon_left_and_right_margins">Big mobile type icon left and right margins</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
|||||||
Reference in New Issue
Block a user