2012-03-27 16 views
4

私はこのエラーが数百万回フォーラムに現れたと知っていますが、私が逃したものを見つけるのを助けてください。 私はシンプルなタブ指向アプリケーションをやろうとしている、私は私の主な活動は、私がjava.lang.RuntimeException:アクティビティを開始できませんComponentInfo

public class MainTabPanel extends TabActivity { 

    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.mainlayout); 
     Resources res = getResources(); 
     TabHost tabHost = getTabHost(); 
     TabHost.TabSpec spec; 
     Intent intent; 
     intent = new Intent().setClass(this, MyBookActivity.class); 
     spec = tabHost.newTabSpec("main") 
       .setIndicator("Main", res.getDrawable(R.drawable.ic_mybook)) 
       .setContent(intent); 
     tabHost.addTab(spec); 
     tabHost.setCurrentTab(0); 
    } 

} 

2見つけたものtablayoutチュートリアル)mainlayoutに基づいています)

1(エラーを除く)はあまりありません。 XML

<?xml version="1.0" encoding="utf-8"?> 
<TabHost xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@android:id/tabhost" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent"> 
<LinearLayout 
    android:orientation="vertical" 
    android:layout_width="fill_parent"  
    android:layout_height="fill_parent"   
    android:padding="5dp"> 
<TabWidget 
    android:id="@android:id/tabs" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" />   

    <FrameLayout  
    android:id="@android:id/tabcontent" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:padding="5dp" /> 
</LinearLayout></TabHost> 

3)私の第二の活動は、それを基本的にはほとんど空ですが、私はタブパネルを追加しようとした直前に働いていた、現在の日付と時刻を表示sの

4)私のマニフェストファイル

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="org.th.mybook" 
    android:versionCode="1" 
    android:versionName="1.0" > 
    <uses-sdk android:minSdkVersion="8" /> 
    <application 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" > 
     <activity 
      android:name=".MainTabPanel" 
      android:label="@string/app_name" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 
       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
     <activity 
      android:name="MyBookActivity" 
      android:label="@string/app_name" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 
       <category android:name="android.intent.category.ALTERNATIVE" /> 
      </intent-filter> 
     </activity> 
    </application> 
</manifest> 

5ログの猫のエラー

02-10 21:04:45.203: E/AndroidRuntime(1107): FATAL EXCEPTION: main 
02-10 21:04:45.203: E/AndroidRuntime(1107): java.lang.RuntimeException: Unable to start activity ComponentInfo{org.th.mybook/org.th.mybook.MainTabPanel}: java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{org.th.mybook/org.th.mybook.MyBookActivity}: java.lang.NullPointerException 
02-10 21:04:45.203: E/AndroidRuntime(1107):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663) 
02-10 21:04:45.203: E/AndroidRuntime(1107):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679) 
02-10 21:04:45.203: E/AndroidRuntime(1107):  at android.app.ActivityThread.access$2300(ActivityThread.java:125) 
02-10 21:04:45.203: E/AndroidRuntime(1107):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033) 
02-10 21:04:45.203: E/AndroidRuntime(1107):  at android.os.Handler.dispatchMessage(Handler.java:99) 
02-10 21:04:45.203: E/AndroidRuntime(1107):  at android.os.Looper.loop(Looper.java:123) 
02-10 21:04:45.203: E/AndroidRuntime(1107):  at android.app.ActivityThread.main(ActivityThread.java:4627) 
02-10 21:04:45.203: E/AndroidRuntime(1107):  at java.lang.reflect.Method.invokeNative(Native Method) 
02-10 21:04:45.203: E/AndroidRuntime(1107):  at java.lang.reflect.Method.invoke(Method.java:521) 
02-10 21:04:45.203: E/AndroidRuntime(1107):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) 
02-10 21:04:45.203: E/AndroidRuntime(1107):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 
02-10 21:04:45.203: E/AndroidRuntime(1107):  at dalvik.system.NativeStart.main(Native Method) 
02-10 21:04:45.203: E/AndroidRuntime(1107): Caused by: java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{org.th.mybook/org.th.mybook.MyBookActivity}: java.lang.NullPointerException 
02-10 21:04:45.203: E/AndroidRuntime(1107):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2585) 
02-10 21:04:45.203: E/AndroidRuntime(1107):  at android.app.ActivityThread.startActivityNow(ActivityThread.java:2503) 
02-10 21:04:45.203: E/AndroidRuntime(1107):  at android.app.LocalActivityManager.moveToState(LocalActivityManager.java:127) 
02-10 21:04:45.203: E/AndroidRuntime(1107):  at android.app.LocalActivityManager.startActivity(LocalActivityManager.java:339) 
02-10 21:04:45.203: E/AndroidRuntime(1107):  at android.widget.TabHost$IntentContentStrategy.getContentView(TabHost.java:651) 
02-10 21:04:45.203: E/AndroidRuntime(1107):  at android.widget.TabHost.setCurrentTab(TabHost.java:323) 
02-10 21:04:45.203: E/AndroidRuntime(1107):  at android.widget.TabHost.addTab(TabHost.java:213) 
02-10 21:04:45.203: E/AndroidRuntime(1107):  at org.th.mybook.MainTabPanel.onCreate(MainTabPanel.java:30) 
02-10 21:04:45.203: E/AndroidRuntime(1107):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047) 
02-10 21:04:45.203: E/AndroidRuntime(1107):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627) 
02-10 21:04:45.203: E/AndroidRuntime(1107):  ... 11 more 
02-10 21:04:45.203: E/AndroidRuntime(1107): Caused by: java.lang.NullPointerException 
02-10 21:04:45.203: E/AndroidRuntime(1107):  at android.content.ContextWrapper.getApplicationContext(ContextWrapper.java:100) 
02-10 21:04:45.203: E/AndroidRuntime(1107):  at org.th.mybook.MyBookActivity.<init>(MyBookActivity.java:16) 
02-10 21:04:45.203: E/AndroidRuntime(1107):  at java.lang.Class.newInstanceImpl(Native Method) 
02-10 21:04:45.203: E/AndroidRuntime(1107):  at java.lang.Class.newInstance(Class.java:1429) 
02-10 21:04:45.203: E/AndroidRuntime(1107):  at android.app.Instrumentation.newActivity(Instrumentation.java:1021) 
02-10 21:04:45.203: E/AndroidRuntime(1107):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2577) 
02-10 21:04:45.203: E/AndroidRuntime(1107):  ... 20 more 

私を助けて、と私は逃したものを私に教えて、イムは、私の古いもので、このコードを比較すると、私は何かを見つけることができませんしてください よろしく

6)私の本活動

public class MyBookActivity extends Activity { 
    java.text.DateFormat dateFormat = android.text.format.DateFormat.getDateFormat(getApplicationContext()); 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
     DigitalClock clock = (DigitalClock) findViewById(R.id.digitalClock1); 
     final TextView date = (TextView) findViewById(R.id.textView1); 
     date.setText(dateFormat.format(new Date())); 
     TextWatcher watcher = new TextWatcher() { 

      @Override 
      public void afterTextChanged(Editable s) { 
      } 

      @Override 
      public void beforeTextChanged(CharSequence s, int start, int count, 
        int after) { 
      } 

      @Override 
      public void onTextChanged(CharSequence s, int start, int before, 
        int count) { 

       if (s.toString().startsWith("00:00:00") 
         || s.toString().startsWith("12:00:00")) { 
        date.setText(dateFormat.format(new Date())); 
       } 
      } 
     }; 
     clock.addTextChangedListener(watcher); 

    } 
} 

7)main.xmlレイアウト - > Fまたは私の本活動

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:gravity="right" 
    android:orientation="horizontal" > 


    <LinearLayout 
     android:id="@+id/DatePanel1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" > 


     <TextView 
      android:id="@+id/textView1" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_marginRight="@dimen/space" 
      android:layout_weight="1" 
      android:text="TextView" /> 

     <DigitalClock 
      android:id="@+id/digitalClock1" 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:text="DigitalClock" /> 
    </LinearLayout> 

</LinearLayout> 
+0

MyBookActivityを実装しましたか? – jpm

+1

ええ、「MyBookActivity」のコードを投稿してください。まだ実装されていない場合は、実装して問題を解決してください。 – Mayank

+0

私はタブを追加する前に機能していたのでここに追加していないと言っていましたが、コード+レイアウトファイルを投稿しました – user902383

答えて

2

それは私自身の愚かされました:誰もが助け

8
<activity 
     android:name="MyBookActivity" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 
      <category android:name="android.intent.category.ALTERNATIVE" /> 
     </intent-filter> 
    </activity> 

あなたのドットがMyBookActivityの前にいるのですか?

+1

私はそれをチェックしますが、それは問題ではないと思います。私は1つの動作例をチェックし、ドットはメインアクティビティの前です – user902383

4

のためにあなたのManifest".YourActivityname"のように指定され、このアクティビティ名の必須のように変更しなければならないのonCreateメソッド内でこのビットを置く

java.text.DateFormat dateFormat = android.text.format.DateFormat.getDateFormat(getApplicationContext()); 

は私の問題を修正し

感謝

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="org.th.mybook" 
android:versionCode="1" 
android:versionName="1.0" > 

<uses-sdk 
    android:minSdkVersion="8" android:targetSdkVersion="8" /> 

<application 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" > 
    <activity 
     android:name=".MainTabPanel" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 
      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
    <activity 
     android:name=".MyBookActivity" >    
    </activity> 
</application> 

0

私は同じ問題を抱えていました。私はこのプロジェクトをきれいにして再構築しました。

関連する問題