たぶん週刊「今週の進捗」

1週間に勉強したことや実装したことをネタに、週に1回(主に土日に)更新していく予定です。「多分」なので、臨時休刊があってもご海容ください。

プロつく計画6:動かなくなった原因を追求する

さて、先週の続きです。 どうやら、使っているテーマが合わないらしく、エラーメッセージで Theme.AppCompat (あるいはそれ的なもの)を使えと言われているようなきがするので、AndroidManifest.xmlandroid:theme を修正してみます。

@android:style/Theme.Light.NoTitleBar

元々指定していたものなので省略。

@style/Theme.AppCompat.Light.NoActionBar

@style/Theme.App.Compat まで入力したらサジェストされた、今まで使っていたテーマと近そうなものを指定してみる。
こんなエラーが出た。

05-13 01:55:48.873 22675-22675/? E/AndroidRuntime: FATAL EXCEPTION: main
                                                   Process: net.zeitungm.measureofroad, PID: 22675
                                                   java.lang.RuntimeException: Unable to start activity ComponentInfo{net.zeitungm.measureofroad/net.zeitungm.measureofroad.MainActivity}: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.
                                                       at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2509)
                                                       at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2569)
                                                       at android.app.ActivityThread.access$900(ActivityThread.java:150)
                                                       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1399)
                                                       at android.os.Handler.dispatchMessage(Handler.java:102)
                                                       at android.os.Looper.loop(Looper.java:168)
                                                       at android.app.ActivityThread.main(ActivityThread.java:5885)
                                                       at java.lang.reflect.Method.invoke(Native Method)
                                                       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:797)
                                                       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:687)
                                                    Caused by: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.
                                                       at android.support.v7.app.AppCompatDelegateImplV9.createSubDecor(AppCompatDelegateImplV9.java:355)
                                                       at android.support.v7.app.AppCompatDelegateImplV9.ensureSubDecor(AppCompatDelegateImplV9.java:324)
                                                       at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:285)
                                                       at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)
                                                       at net.zeitungm.measureofroad.MainActivity.onCreate(MainActivity.java:142)
                                                       at android.app.Activity.performCreate(Activity.java:6262)
                                                       at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1125)
                                                       at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2462)
                                                       at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2569) 
                                                       at android.app.ActivityThread.access$900(ActivityThread.java:150) 
                                                       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1399) 
                                                       at android.os.Handler.dispatchMessage(Handler.java:102) 
                                                       at android.os.Looper.loop(Looper.java:168) 
                                                       at android.app.ActivityThread.main(ActivityThread.java:5885) 
                                                       at java.lang.reflect.Method.invoke(Native Method) 
                                                       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:797) 
                                                       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:687) 
05-13 01:55:48.875 1191-2723/? E/ActivityManager: App crashed! Process: net.zeitungm.measureofroad

同じエラー内容ですがな。

@style/Theme.AppCompat.Light.NoActionBar.FullScreen

ここを参考に、 styles.xml も編集してやってみた。

https://moshimore.jp/knowledge/2016/02/06/android_fullscreen/

こんなエラーが出た。

05-13 13:29:04.748 12269-12269/net.zeitungm.measureofroad E/AndroidRuntime: FATAL EXCEPTION: main
                                                                            Process: net.zeitungm.measureofroad, PID: 12269
                                                                            java.lang.RuntimeException: Unable to start activity ComponentInfo{net.zeitungm.measureofroad/net.zeitungm.measureofroad.MainActivity}: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.
                                                                                at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2509)
                                                                                at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2569)
                                                                                at android.app.ActivityThread.access$900(ActivityThread.java:150)
                                                                                at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1399)
                                                                                at android.os.Handler.dispatchMessage(Handler.java:102)
                                                                                at android.os.Looper.loop(Looper.java:168)
                                                                                at android.app.ActivityThread.main(ActivityThread.java:5885)
                                                                                at java.lang.reflect.Method.invoke(Native Method)
                                                                                at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:797)
                                                                                at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:687)
                                                                             Caused by: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.
                                                                                at android.support.v7.app.AppCompatDelegateImplV9.createSubDecor(AppCompatDelegateImplV9.java:355)
                                                                                at android.support.v7.app.AppCompatDelegateImplV9.ensureSubDecor(AppCompatDelegateImplV9.java:324)
                                                                                at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:285)
                                                                                at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)
                                                                                at net.zeitungm.measureofroad.MainActivity.onCreate(MainActivity.java:142)
                                                                                at android.app.Activity.performCreate(Activity.java:6262)
                                                                                at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1125)
                                                                                at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2462)
                                                                                at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2569) 
                                                                                at android.app.ActivityThread.access$900(ActivityThread.java:150) 
                                                                                at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1399) 
                                                                                at android.os.Handler.dispatchMessage(Handler.java:102) 
                                                                                at android.os.Looper.loop(Looper.java:168) 
                                                                                at android.app.ActivityThread.main(ActivityThread.java:5885) 
                                                                                at java.lang.reflect.Method.invoke(Native Method) 
                                                                                at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:797) 
                                                                                at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:687) 
05-13 13:29:04.748 1191-2723/? E/ActivityManager: App crashed! Process: net.zeitungm.measureofroad

また同じエラー…

というわけで、今週も進捗なしです。