Aktivieren und deaktivieren der option in PreferenceActivity
Ich bin neu zu erstellen PreferenceActivity
. Meine Frage ist, wie aktivieren und deaktivieren Sie die option im preference-Bildschirm, indem Sie andere Vorlieben?
Meine prefs.xml:
<ListPreference
android:entries="@array/units"
android:entryValues="@array/lunits"
android:key="listUnits"
android:summary="Units schosssing"
android:title="Units" android:defaultValue="C"/>
<ListPreference
android:entries="@array/palette"
android:entryValues="@array/lpalette"
android:key="listpalette"
android:summary="Palette schosssing"
android:title="Palette"
android:defaultValue="1"/>
In der listUnits
es gibt 2 Optionen, Celsius und Fahrenheit, also wenn der Benutzer wählt Celsius die listpalette
sollte aktiviert wird, und wenn der Benutzer auswählt, Fahrenheit wird deaktiviert, wie kann ich dies tun?
Meine Einstellungen Aktivität:
public class SettingsActivity extends PreferenceActivity
{
@Override
protected void onCreate(final Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
getFragmentManager().beginTransaction().replace(android.R.id.content, new MyPreferenceFragment()).commit();
}
public static class MyPreferenceFragment extends PreferenceFragment
{
@Override
public void onCreate(final Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.prefs);
}
}
}
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dieser code kann für Sie nützlich sein. Kann als Referenz nehmen.
Erste Instanz sowohl der ListPreference und anwenden diese Methode.
und unten listner
gelten Zuhörer ListPreference
mlistUnits= (Preference) findPreference("listUnits");
Erstens Sie können default-Wert für Ihre
listUnits
listpreference zucelcius
oderFahrenheit
nach diesem können Sie machen, aktivieren, deaktivieren Ihre zweite listpreference.Nun, wenn Sie Ihre Präferenz, indem Sie jeder von Ihnen können Sie Folgen Sie den nachstehenden Verfahren.
1) implementieren Sie
OnSharedPreferenceChangeListener
in IhremMyPreferenceFragment
- Klasse und überschreiben Sie die MethodeonSharedPreferenceChanged
2) Code wie unten in Ihre Methode
Hoffe, es wird Helfen. Lassen Sie mich wissen, wenn irgendetwas fehlt in meinem post.
Als Ihre zweite Liste ausgewertet wird auf die Grundlagen der ersten Liste, was Sie tun können,
Suchen Präferenz klicken Sie auf die Erste Liste, um den Wert der Präferenz angeklickt.
Mit diesem Wert einfach aktivieren/deaktivieren Sie Ihre zweite Liste.