import android.content.pm.ActivityInfo;
import android.os.Bundle;
import android.preference.ListPreference;
import android.preference.Preference;
import android.preference.PreferenceActivity;
import android.util.Log;
import android.view.Window;
import android.view.WindowManager;
public class OptionsActivity extends PreferenceActivity {
private ListPreference mListPreference;
@Override
protected void onCreate (Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
addPreferencesFromResource(R.xml.options);
mListPreference = (ListPreference) findPreference("listpreference");
mListPreference.setPersistent(false);
}
}
Exception Stacktrace is given below:
01-27 12:35:51.920: ERROR/AndroidRuntime(615): FATAL EXCEPTION: main
01-27 12:35:51.920: ERROR/AndroidRuntime(615): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.android.game/com.android.game.OptionsActivity}: android.util.AndroidRuntimeException: requestFeature() must be called before adding content
01-27 12:35:51.920: ERROR/AndroidRuntime(615): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
01-27 12:35:51.920: ERROR/AndroidRuntime(615): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
01-27 12:35:51.920: ERROR/AndroidRuntime(615): at android.app.ActivityThread.access$2300(ActivityThread.java:125)
01-27 12:35:51.920: ERROR/AndroidRuntime(615): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
01-27 12:35:51.920: ERROR/AndroidRuntime(615): at android.os.Handler.dispatchMessage(Handler.java:99)
01-27 12:35:51.920: ERROR/AndroidRuntime(615): at android.os.Looper.loop(Looper.java:123)
01-27 12:35:51.920: ERROR/AndroidRuntime(615): at android.app.ActivityThread.main(ActivityThread.java:4627)
01-27 12:35:51.920: ERROR/AndroidRuntime(615): at java.lang.reflect.Method.invokeNative(Native Method)
01-27 12:35:51.920: ERROR/AndroidRuntime(615): at java.lang.reflect.Method.invoke(Method.java:521)
01-27 12:35:51.920: ERROR/AndroidRuntime(615): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
01-27 12:35:51.920: ERROR/AndroidRuntime(615): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
01-27 12:35:51.920: ERROR/AndroidRuntime(615): at dalvik.system.NativeStart.main(Native Method)
01-27 12:35:51.920: ERROR/AndroidRuntime(615): Caused by: android.util.AndroidRuntimeException: requestFeature() must be called before adding content
01-27 12:35:51.920: ERROR/AndroidRuntime(615): at com.android.internal.policy.impl.PhoneWindow.requestFeature(PhoneWindow.java:172)
01-27 12:35:51.920: ERROR/AndroidRuntime(615): at android.app.Activity.requestWindowFeature(Activity.java:2719)
01-27 12:35:51.920: ERROR/AndroidRuntime(615): at com.android.game.OptionsActivity.onCreate(OptionsActivity.java:20)
01-27 12:35:51.920: ERROR/AndroidRuntime(615): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
01-27 12:35:51.920: ERROR/AndroidRuntime(615): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
01-27 12:35:51.920: ERROR/AndroidRuntime(615): ... 11 more
7
A
risposta
12
Spostare il setRequestedOrientation() dopo il codice add/clearFlags()
Edit: come indicato qui di seguito, non ho visto che sta utilizzando un preferenceActivity. Solo per la vostra comprensione, questo è il PreferenceActivity.onCreate() che si chiama con super.onCreate():
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(com.android.internal.R.layout.preference_list_content);
mPreferenceManager = onCreatePreferenceManager();
getListView().setScrollBarStyle(View.SCROLLBARS_INSIDE_INSET);
}
Perché voi richiesta FEATURE_NO_TITLE se questo già è richiesto nella super.onCreate()? A volte è molto utile se si scava nel codice sorgente di Android.
9
In questo caso, il super sta impostando la vista del contenuto ed è necessario utilizzare requestWindowFeature prima di impostare la visualizzazione del contenuto. Quindi usa requestWindowFeature prima di chiamare il super.
public class LandNavSettings extends PreferenceActivity implements
SharedPreferences.OnSharedPreferenceChangeListener {
@Override
protected void onCreate(Bundle icicle) {
requestWindowFeature(Window.FEATURE_NO_TITLE);
super.onCreate(icicle);
}
}
Problemi correlati
- 1. Utilizzo di ActionBarCompat e requestWindowFeature
- 2. Qual è lo scopo di requestWindowFeature()?
- 3. Barra del titolo continua ad apparire, anche con requestWindowFeature o Android: tema
- 4. Math.cos() dà risultato sbagliato
- 5. eglQuerySurface dà taglia sbagliata
- 6. res.should.have.status mi dà errore
- 7. Pattern.matches() dà StackOverflowError
- 8. mappa rinfrescante ItemizedOverlay dà ArrayIndexOutOfBoundsException
- 9. Excel CERCA.VERT dà valore errato
- 10. git branch -d dà avvertimento
- 11. .msg file dà download error
- 12. numpy.polyfit dà residui vuoti matrice
- 13. Modulo operatore (%) dà risultati divergenti
- 14. avvio del processo dà l'errore
- 15. SVGZ dà l'errore di codifica
- 16. numpy.loadtxt dà "non iterabile" Errore
- 17. personalizzato Retrofit ErrorHandler dà UndeclaredThrowableException
- 18. boost :: program_options dà errore malloc
- 19. printf dà un risultato inaspettato
- 20. SPARQL Query dà risultato inaspettato
- 21. Python: tipo() dà risultato vuoto
- 22. h5py dà l'errore dopo l'installazione
- 23. RewriteEngine su dà errore 403
- 24. m2e Eclipse indigo dà errore
- 25. Chef coltello dà libreria GSSAPI C avvertimento
- 26. Perché Passport.js mi dà un errore middleware?
- 27. dpkg che dà errore "È una directory"
- 28. regex.sub() dà risultati diversi a re.sub()
- 29. Jenkins con pylint dà difetto di costruzione
- 30. aggregata con na.action = na.pass dà risposta inaspettata
questo non ha funzionato. – Nuraiz
Oh sì, ti ho appena visto estendere PreferenceActivity. Difficile leggere il testo non formattato. Non è possibile farlo con l'estensione di PreferenceActivity. Non appena chiami super.onCreate(), il ViewGroup verrà impostato e quindi non ti è permesso modificare i parametri della finestra. POTRESTI provare a chiamare super.onCreate() in uno stato successivo (dopo le impostazioni del flag della finestra), ma dubito che tu possa accedere al membro di Window in quello stato di creazione. – Oliver
Ho provato questo e questo funziona. Grazie per avermi aiutato – Nuraiz