diff --git a/app/src/main/java/io/legado/app/lib/prefs/ColorPreference.kt b/app/src/main/java/io/legado/app/lib/prefs/ColorPreference.kt index b427992e7..3eb688d78 100644 --- a/app/src/main/java/io/legado/app/lib/prefs/ColorPreference.kt +++ b/app/src/main/java/io/legado/app/lib/prefs/ColorPreference.kt @@ -10,7 +10,6 @@ import androidx.annotation.ColorInt import androidx.annotation.StringRes import androidx.appcompat.app.AlertDialog import androidx.fragment.app.FragmentActivity -import androidx.preference.Preference import androidx.preference.PreferenceViewHolder import com.jaredrummler.android.colorpicker.* import io.legado.app.utils.ColorUtils @@ -118,14 +117,14 @@ class ColorPreference(context: Context, attrs: AttributeSet) : Preference(contex } override fun onBindViewHolder(holder: PreferenceViewHolder) { - val v = io.legado.app.lib.prefs.Preference.bindView( + super.onBindViewHolder(holder) + val v = bindView( context, holder, icon, title, summary, widgetLayoutResource, - com.jaredrummler.android.colorpicker.R.id.cpv_preference_preview_color_panel, 30, 30 + R.id.cpv_preference_preview_color_panel, 30, 30 ) if (v is ColorPanelView) { v.color = mColor } - super.onBindViewHolder(holder) } override fun onSetInitialValue(defaultValue: Any?) { diff --git a/app/src/main/java/io/legado/app/lib/prefs/NameListPreference.kt b/app/src/main/java/io/legado/app/lib/prefs/NameListPreference.kt index ca1abe128..ffcfc3486 100644 --- a/app/src/main/java/io/legado/app/lib/prefs/NameListPreference.kt +++ b/app/src/main/java/io/legado/app/lib/prefs/NameListPreference.kt @@ -24,6 +24,7 @@ class NameListPreference(context: Context, attrs: AttributeSet) : ListPreference } override fun onBindViewHolder(holder: PreferenceViewHolder) { + super.onBindViewHolder(holder) val v = Preference.bindView( context, holder, icon, title, summary, widgetLayoutResource, R.id.text_view, isBottomBackground = isBottomBackground @@ -36,7 +37,6 @@ class NameListPreference(context: Context, attrs: AttributeSet) : ListPreference v.setTextColor(pTextColor) } } - super.onBindViewHolder(holder) } } \ No newline at end of file diff --git a/app/src/main/java/io/legado/app/lib/prefs/Preference.kt b/app/src/main/java/io/legado/app/lib/prefs/Preference.kt index 9f8fbf91d..f2cbb2fb4 100644 --- a/app/src/main/java/io/legado/app/lib/prefs/Preference.kt +++ b/app/src/main/java/io/legado/app/lib/prefs/Preference.kt @@ -20,7 +20,7 @@ import io.legado.app.utils.ColorUtils import splitties.views.onLongClick import kotlin.math.roundToInt -class Preference(context: Context, attrs: AttributeSet) : +open class Preference(context: Context, attrs: AttributeSet) : androidx.preference.Preference(context, attrs) { private var onLongClick: ((preference: Preference) -> Boolean)? = null diff --git a/app/src/main/java/io/legado/app/lib/prefs/SwitchPreference.kt b/app/src/main/java/io/legado/app/lib/prefs/SwitchPreference.kt index 1671b73fc..710959db0 100644 --- a/app/src/main/java/io/legado/app/lib/prefs/SwitchPreference.kt +++ b/app/src/main/java/io/legado/app/lib/prefs/SwitchPreference.kt @@ -23,6 +23,7 @@ class SwitchPreference(context: Context, attrs: AttributeSet) : } override fun onBindViewHolder(holder: PreferenceViewHolder) { + super.onBindViewHolder(holder) val v = Preference.bindView( context, holder, @@ -36,7 +37,6 @@ class SwitchPreference(context: Context, attrs: AttributeSet) : if (v is SwitchCompat && !v.isInEditMode) { v.applyTint(context.accentColor) } - super.onBindViewHolder(holder) onLongClick?.let { listener -> holder.itemView.setOnLongClickListener { listener.invoke(this)