问题:
Caused by: java.lang.IllegalStateException: This Activity already has an action bar supplied by the window decor. Do not request Window.FEATURE_SUPPORT_ACTION_BAR and set windowActionBar to false in your theme to use a Toolbar instead.
at androidx.appcompat.app.AppCompatDelegateImpl.setSupportActionBar(AppCompatDelegateImpl.java:581)
at androidx.appcompat.app.AppCompatActivity.setSupportActionBar(AppCompatActivity.java:183)
at com.example.mykotlin1.AddUpdateDishActivity.setupActionBar(AddUpdateDishActivity.kt:22)
at com.example.mykotlin1.AddUpdateDishActivity.onCreate(AddUpdateDishActivity.kt:17)
at android.app.Activity.performCreate(Activity.java:8000)
at android.app.Activity.performCreate(Activity.java:7984)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1309)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3422)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3601)
mainfest中activity没有设置theme,默认是有actionbar的
解决办法:
设置activity为noactionbar
<activity
android:name=".AddUpdateDishActivity"
android:label="@string/add_dish"
android:configChanges="orientation"
android:theme="@style/Theme.FavDish.NoActionBar" >
</activity>
自定义theme:
<style name="Theme.FavDish.NoActionBar" parent="Theme.MaterialComponents.DayNight.DarkActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>