アンドロイドアプリ内のテーマを変更するにはどうすればいいですか?LightまたはDarkテーマを選択できる設定のアクティビティがあります。Androidアプリの中のテーマを変更する
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);
}
}
}
をエラーログです:
2月4日07:16:40.023 23924から23924/COM。 example.pavle.usbotgenabler E/AndroidRuntime:致命的除外:メイン プロセス:com.example.pavle.usbotgenabler、PID:23924 java.lang.RuntimeException: java.lang.IllegalStateException:活性 ComponentInfo {com.example.pavle.usbotgenabler/com.example.pavle.usbotgenabler.otg_enaber.OTGEnabler}開始できませんこのアクティビティを既にアクション バーを有しています窓装飾によって供給される。 Window.FEATURE_SUPPORT_ACTION_BARを要求せず、代わりに のテーマでツールバーを使用するようにwindowActionBarをfalseに設定しないでください。 でandroid.app.ActivityThread.performLaunchActivity(ActivityThread.java:2416) でandroid.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476) android.app.ActivityThread.-wrap11(ActivityThread.java)で でandroid.os.Looper.loopでandroid.app.ActivityThread $ H.handleMessage android.os.Handler.dispatchMessageで(ActivityThread.java:1344) (Handler.java:102) (Looper.java:148) android.app.ActivityThread.main(ActivityThread.java:5417)の (java.lang.reflect.Metho) d.invoke(ネイティブメソッド) at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:726) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 発生原因:java.lang.IllegalStateException:このアクティビティには、すでにウィンドウの装飾によってアクションバーが提供されている があります。 Window.FEATURE_SUPPORT_ACTION_BARを要求せず、代わりに のテーマでツールバーを使用するようにwindowActionBarをfalseに設定しないでください。 で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 android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107)で(OTGEnabler.java:80)android.app.Activity.performCreate(Activity.java:6237)で で android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369)android.app.ActivityThread.-wrap11で でandroid.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476) (ActivityThread.java) android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1344で) android.os.Handler。(%% message%)%% message %% message %% message %% message %% message %% message %% message %% message %% message %% message %% message %% message %% message %% message %% message %% message %% message %% message %% message %% message %% message %% message %% message %% message %% message %% message %% message %% message %% message %% message %% message %% message %% message %% message %% message %% message %%から% com.android.internal.os.ZygoteInit.mainで com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:726) (ZygoteInit.java:616)
で(ネイティブメソッド) を呼び出します
コードはどうなりますか? – Raghunandan
私はアプリケーションを実行すると、私はアプリケーションが動作を停止した! – pavlenis1906
それから、関連するログを投稿するクラッシュpls – Raghunandan