0

アクションバーを追加したい拡張可能なリストビューアプリケーションを開発しています。

アクション バーの可視性のためには、ActionBarActivity クラスを拡張する必要があるようですが、Expandable リスト アクティビティを実行するには、アクティビティ クラスを拡張する必要があります。

だから、私は次のコードを変更しました

から

public class Time extends Activity {

public class Time extends ActionBarActivity {

次の階層を想定

java.lang.Object
   ↳    android.content.Context
       ↳    android.content.ContextWrapper
           ↳    android.view.ContextThemeWrapper
               ↳    android.app.Activity
                   ↳    android.support.v4.app.FragmentActivity
                       ↳    android.support.v7.app.ActionBarActivity

しかし、今アプリケーションを実行すると、null ポインター例外が発生します。 super.onCreate(savedInstanceState);

ここでログを確認してください:

12-19 00:10:48.995  14128-14128/sudharshanapps.clock E/AndroidRuntime﹕ FATAL EXCEPTION: main
    Process: sudharshanapps.clock, PID: 14128
    java.lang.RuntimeException: Unable to start activity ComponentInfo{sudharshanapps.clock/sudharshanapps.clock.Time}: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2198)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2257)
            at android.app.ActivityThread.access$800(ActivityThread.java:139)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1210)
            at android.os.Handler.dispatchMessage(Handler.java:102)
            at android.os.Looper.loop(Looper.java:136)
            at android.app.ActivityThread.main(ActivityThread.java:5086)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:515)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
            at dalvik.system.NativeStart.main(Native Method)
     Caused by: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.
            at android.support.v7.app.ActionBarActivityDelegate.onCreate(ActionBarActivityDelegate.java:151)
            at android.support.v7.app.ActionBarActivityDelegateBase.onCreate(ActionBarActivityDelegateBase.java:138)
            at android.support.v7.app.ActionBarActivity.onCreate(ActionBarActivity.java:123)
            at sudharshanapps.clock.Time.onCreate(Time.java:247)
            at android.app.Activity.performCreate(Activity.java:5248)
            at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1110)
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2162)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2257)
            at android.app.ActivityThread.access$800(ActivityThread.java:139)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1210)
            at android.os.Handler.dispatchMessage(Handler.java:102)
            at android.os.Looper.loop(Looper.java:136)
            at android.app.ActivityThread.main(ActivityThread.java:5086)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:515)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
            at dalvik.system.NativeStart.main(Native Method)

ここに何が欠けているか、またはどこを探すべきかについての参考文献やアイデアを提案してください。

4

1 に答える 1

2

マニフェスト ファイルを から変更

<application
        android:allowBackup="true"
        android:icon="@drawable/logo"
        android:label="Time across Globe"
        android:theme="@style/AppTheme" >

<application
        android:allowBackup="true"
        android:icon="@drawable/logo"
        android:label="Time across Globe"
        android:theme="@style/Theme.AppCompat.Light" >

それは問題を解決しました

于 2014-12-18T18:57:27.660 に答える