diff --git a/app/build.gradle b/app/build.gradle index 74a7b5b01..acf098c9e 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -169,7 +169,7 @@ dependencies { implementation 'com.jayway.jsonpath:json-path:2.5.0' //JS rhino - implementation 'com.github.gedoor:rhino-android:1.4' + implementation 'com.github.gedoor:rhino-android:1.5' //网络 implementation 'com.squareup.okhttp3:okhttp:4.9.0' diff --git a/app/src/main/java/io/legado/app/ui/widget/BatteryView.kt b/app/src/main/java/io/legado/app/ui/widget/BatteryView.kt index 49cdeb330..1c4aa8a6c 100644 --- a/app/src/main/java/io/legado/app/ui/widget/BatteryView.kt +++ b/app/src/main/java/io/legado/app/ui/widget/BatteryView.kt @@ -10,14 +10,13 @@ import android.util.AttributeSet import androidx.annotation.ColorInt import androidx.appcompat.widget.AppCompatTextView import io.legado.app.utils.dp -import java.io.File class BatteryView @JvmOverloads constructor( context: Context, attrs: AttributeSet? = null ) : AppCompatTextView(context, attrs) { private val batteryTypeface by lazy { - Typeface.createFromAsset(context.assets, "font${File.separator}number.ttf") + Typeface.createFromAsset(context.assets, "font/number.ttf") } private val batteryPaint = Paint() private val outFrame = Rect() @@ -26,18 +25,24 @@ class BatteryView @JvmOverloads constructor( set(value) { field = value if (value) { - typeface = batteryTypeface + super.setTypeface(batteryTypeface) postInvalidate() } } init { - setPadding(4.dp, 0, 6.dp, 0) + setPadding(4.dp, 2.dp, 6.dp, 2.dp) batteryPaint.strokeWidth = 1.dp.toFloat() batteryPaint.isAntiAlias = true batteryPaint.color = paint.color } + override fun setTypeface(tf: Typeface?) { + if (!isBattery) { + super.setTypeface(tf) + } + } + fun setColor(@ColorInt color: Int) { setTextColor(color) batteryPaint.color = color @@ -54,9 +59,9 @@ class BatteryView @JvmOverloads constructor( if (!isBattery) return outFrame.set( 1.dp, - layout.getLineBaseline(0) + layout.getLineAscent(0) + 2.dp, + 1.dp, width - 3.dp, - layout.getLineBaseline(0) + 2.dp + height - 1.dp ) val dj = (outFrame.bottom - outFrame.top) / 3 polar.set(