setcurrenttab da preferenza
-
01-10-2019 - |
Domanda
La scheda predefinita che viene visualizzata nella mia app è scheda 0. vorrei quando Preferenze uso si fa clic, per cambiare il currentTab a 1, così come la prossima volta che si apre l'applicazione, scheda 1 viene visualizzato al posto di scheda 0 .
Questo è il contenuto Preferences.java:
package com.fbisoft.uowt;
import android.os.Bundle;
import android.preference.Preference;
import android.preference.PreferenceActivity;
import android.preference.Preference.OnPreferenceClickListener;
import android.widget.TabHost;
import android.widget.Toast;
public class Preferences extends PreferenceActivity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.preferences);
getPreferenceManager().findPreference("uso").setOnPreferenceClickListener(new OnPreferenceClickListener() {
@Override
public boolean onPreferenceClick(Preference preference) {
TabHost.setCurrentTab(1);
return true;
}
});
}
}
Il TabHost.setCurrentTab(1);
mi dà un errore:
Cannot make a static reference to the non-static method setCurrentTab(int)
from the type TabHost
Soluzione
È necessario avere la vostra attività che ha l'orologio TabHost
per le modifiche delle preferenze, quindi modificare la vostra scheda lì. Non si può dire la classe TabHost
per cambiare una scheda.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow