Comment changer de thème à l'intérieur de l'application Android J'ai une activité avec des paramètres où je peux sélectionner le thème Light ou Dark.Android Changer de thème Inside App
Paramètres Activité Puis-je utiliser quelque chose comme ceci:
public class OTGEnabler extends AppCompatActivity
implements NavigationView.OnNavigationItemSelectedListener
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_otgenabler);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(
this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
drawer.setDrawerListener(toggle);
toggle.syncState();
NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
navigationView.setNavigationItemSelectedListener(this);
SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(this);
String theme = sharedPrefs.getString("Choose Theme",null);
if(theme != null && theme.equals("Light"))
{
setTheme(R.style.AppTheme);
}
else
{
setTheme(R.style.AppTheme_AppBarOverlay);
}
}
}
est ici journal d'erreur:
02-04 07: 16: 40,023 23924-23924/com. example.pavle.usbotgenabler E/AndroidRuntime: FATAL EXCEPTION: principal Processus: com.example.pavle.usbotgenabler, PID: 23924 java.lang.RuntimeException: Impossible de démarrer l'activité ComposantInfo {com.example.pavle.usbotgenabler/com.example.pavle.usbotgenabler.otg_enaber.OTGEnabler}: java.lang.IllegalStateException: Cette activité a déjà une action bar fourni par le décor de la fenêtre. Ne demandez pas Window.FEATURE_SUPPORT_ACTION_BAR et définissez windowActionBar sur false dans votre thème pour utiliser une barre d'outils à la place. à android.app.ActivityThread.performLaunchActivity (ActivityThread.java:2416) à android.app.ActivityThread.handleLaunchActivity (ActivityThread.java:2476) à android.app.ActivityThread.-wrap11 (ActivityThread.java) au android.app.ActivityThread $ H.handleMessage (ActivityThread.java:1344) à android.os.Handler.dispatchMessage (Handler.java:102) à android.os.Looper.loop (Looper.java:148) à android.app.ActivityThread.main (ActivityThread.java:5417) à java.lang.reflect.Metho d.invoke (méthode native) à com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.java:726) à com.android.internal.os.ZygoteInit.main (ZygoteInit.java:616) Causé par: java.lang.IllegalStateException: Cette activité a déjà une barre d'action fournie par le décor de la fenêtre. Ne demandez pas Window.FEATURE_SUPPORT_ACTION_BAR et définissez windowActionBar sur false dans votre thème pour utiliser une barre d'outils à la place. à android.support.v7.app.AppCompatDelegateImplV9.setSupportActionBar (AppCompatDelegateImplV9.java:203) à android.support.v7.app.AppCompatActivity.setSupportActionBar (AppCompatActivity.java:133) à com.example.pavle .usbotgenabler.otg_enaber.OTGEnabler.onCreate (OTGEnabler.java:80) à android.app.Activity.performCreate (Activity.java:6237) à android.app.Instrumentation.callActivityOnCreate (Instrumentation.java:1107) à android.app.ActivityThread.performLaunchActivity (ActivityThread.java:2369) à android.app.ActivityThread.handleLaunchActivity (ActivityThread.java:2476) à android.app.ActivityThread.-wrap11 (ActivityThread.java) à android.app.ActivityThread $ H.handleMessage (ActivityThread.java:1344) chez android.os.Handler.dispatchMessage (Handler.java:102) à android.os.Looper.loop (Looper.java:148) à android.app.ActivityThread.main (ActivityThread.java:5417) à java.lang.reflect.Method. invoquer (native Method) à com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.java:726) à com.android.internal.os.ZygoteInit.main (ZygoteInit.java:616)
Qu'est-ce qui se passe avec votre code? – Raghunandan
Lorsque je lance l'application, l'application ger a cessé de fonctionner !!! – pavlenis1906
puis son un pls pls poster les journaux pertinents – Raghunandan