Estoy tratando de implementar Androidx SeekBarPreference, de acuerdo con los docs I podría usar el atributo setMax en mi xml, pero obtengo el siguiente error al hacerlo:

En xml:

<SeekBarPreference
    app:key="preference_key"
    app:title="@string/preference"
    app:showSeekBarValue="true"
    app:setMax="10"/>

El error:

root_preferences.xml:53: AAPT: error: attribute setMax (aka 
gls.dev.MyApplication:setMax) not found.

Sin embargo, al configurar las propiedades en código, funciona como un encanto:

findPreference<SeekBarPreference>("preference_key")?.apply {
    max = 10
    min = 1
    seekBarIncrement = 1
    isAdjustable = true
}
1
glisu 11 may. 2019 a las 04:57

4 respuestas

La mejor respuesta

El atributo max actualmente solo existe en el espacio de nombres android:, por lo que deberá usar:

<SeekBarPreference
    app:key="preference_key"
    app:title="@string/preference"
    app:showSeekBarValue="true"
    android:max="10"/>
4
Louis 13 may. 2019 a las 01:24

El atributo es max no setMax. Tu tienes que hacer:

app:max="10"
2
gpunto 11 may. 2019 a las 07:13

Puede configurar su barra de búsqueda de esta manera:

        <SeekBarPreference
        app:title="Choose value:"
        app:defaultValue="2"
        app:min="2"
        app:seekBarIncrement="1"
        android:max="12"
        app:key="key"
        app:adjustable="true"
        app:isPreferenceVisible="true"
        app:showSeekBarValue="true"/>

También deberá agregar esto a su etiqueta raíz:

xmlns:android="http://schemas.android.com/apk/res/android"
0
Charlie 31 oct. 2019 a las 11:53

Deberías probar esto

En su XML

<SeekBarPreference
    app:key="preference_key"
    app:title="@string/preference"
    app:showSeekBarValue="true"
    app:max="10"/>

Funcionará

0
Arbaz Pirwani 11 may. 2019 a las 07:15