2011-07-30 7 views
0

버튼 클릭시 새 탭 활동 시작시 스택 오버 플로우에 대한 링크를 살펴 보았습니다.버튼 클릭시 시작 탭 활동에 문제가 발생했습니다.

내가 얻고 로그 캣에 다음

07-30 13:08:10.460: ERROR/AndroidRuntime(304): FATAL EXCEPTION: main 
07-30 13:08:10.460: ERROR/AndroidRuntime(304): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.biz.mlm/com.biz.mlm.HomeTabActivity}: java.lang.NullPointerException 
07-30 13:08:10.460: ERROR/AndroidRuntime(304):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663) 
07-30 13:08:10.460: ERROR/AndroidRuntime(304):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679) 
07-30 13:08:10.460: ERROR/AndroidRuntime(304):  at android.app.ActivityThread.access$2300(ActivityThread.java:125) 
07-30 13:08:10.460: ERROR/AndroidRuntime(304):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033) 
07-30 13:08:10.460: ERROR/AndroidRuntime(304):  at android.os.Handler.dispatchMessage(Handler.java:99) 
07-30 13:08:10.460: ERROR/AndroidRuntime(304):  at android.os.Looper.loop(Looper.java:123) 
07-30 13:08:10.460: ERROR/AndroidRuntime(304):  at android.app.ActivityThread.main(ActivityThread.java:4627) 
07-30 13:08:10.460: ERROR/AndroidRuntime(304):  at java.lang.reflect.Method.invokeNative(Native Method) 
07-30 13:08:10.460: ERROR/AndroidRuntime(304):  at java.lang.reflect.Method.invoke(Method.java:521) 
07-30 13:08:10.460: ERROR/AndroidRuntime(304):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) 
07-30 13:08:10.460: ERROR/AndroidRuntime(304):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 
07-30 13:08:10.460: ERROR/AndroidRuntime(304):  at dalvik.system.NativeStart.main(Native Method) 
07-30 13:08:10.460: ERROR/AndroidRuntime(304): Caused by: java.lang.NullPointerException 
07-30 13:08:10.460: ERROR/AndroidRuntime(304):  at com.biz.mlm.HomeTabActivity.onCreate(HomeTabActivity.java:28) 
07-30 13:08:10.460: ERROR/AndroidRuntime(304):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047) 
07-30 13:08:10.460: ERROR/AndroidRuntime(304):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627) 
07-30 13:08:10.460: ERROR/AndroidRuntime(304):  ... 11 more 
07-30 13:08:10.520: WARN/ActivityManager(58): Force finishing activity com.biz.mlm/.HomeTabActivity 
07-30 13:08:10.520: WARN/ActivityManager(58): Force finishing activity com.biz.mlm/.login 

로 내가 로그인 버튼의 클릭에 HomeTabActivity을 시작하려고 : 나는 세 가지 다른 활동과 changepassword, editprofile 및 homeActivity을 추가 한 또한

Intent newIntent = new Intent(
            getApplicationContext(), HomeTabActivity.class); 
          newIntent.putExtra("Userid", message); 
          newIntent.putExtra("Password", txtPswrd.getText() 
            .toString()); 
          startActivity(newIntent); 

에 HomeTabActivity.

내 homeTabActivity.java의 코드는

TabHost tabHost = (TabHost)findViewById(android.R.id.tabhost); // The activity TabHost 
     TabHost.TabSpec spec; // Reusable TabSpec for each tab 
     Intent intent; // Reusable Intent for each tab 

     // Create an Intent to launch an Activity for the tab (to be reused) 
     intent = new Intent().setClass(this,HomeActivity.class); 

     // Initialize a TabSpec for each tab and add it to the TabHost 
     spec = tabHost.newTabSpec("Home").setIndicator("Home").setContent(intent); 
     tabHost.addTab(spec); 

     // Do the same for the other tabs 
     intent = new Intent().setClass(this, changePasswordActivity.class); 
     spec = tabHost.newTabSpec("Change Password").setIndicator("Change Password").setContent(intent); 
     tabHost.addTab(spec); 

     intent = new Intent().setClass(this, editProfileActivity.class); 
     spec = tabHost.newTabSpec("Edit Profile").setIndicator("Edit Profile").setContent(intent); 
     tabHost.addTab(spec); 

     tabHost.setCurrentTab(2); 

하고 난 매니페스트 파일이 추가 코드 세그먼트는 다음과 같습니다

<activity android:name=".HomeTabActivity" android:label="Home" 
      android:theme="@android:style/Theme.NoTitleBar" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 
       <category android:name="android.intent.category.DEFAULT" /> 
      </intent-filter> 
     </activity> 
     <activity android:name=".HomeActivity"> 
     <intent-filter> 
       <action android:name="com.biz.mlm.HomeActivity" /> 
       <category android:name="android.intent.category.DEFAULT" /> 
      </intent-filter> 
     </activity> 
     <activity android:name=".editProfileActivity"> 
     <intent-filter> 
       <action android:name="com.biz.mlm.editProfileActivity" /> 
       <category android:name="android.intent.category.DEFAULT" /> 
      </intent-filter> 
     </activity> 
     <activity android:name=".changePasswordActivity"> 
     <intent-filter> 
       <action android:name="com.biz.mlm.changePasswordActivity" /> 
       <category android:name="android.intent.category.DEFAULT" /> 
      </intent-filter> 
     </activity> 

답변

0

당신이 어떤 줄에 널 포인터 예외를 얻고있다. 28 in HelloTtabActivity. 내부 onCreate() 메소드. 포스트 라인 번호. 28 여기 또는 자신을 다르게 해결하십시오.

+0

// 각 탭의 TabSpec을 초기화하고 TabHost에 추가하십시오. spec = tabHost.newTabSpec ("Home"). setIndicator ("Home"). setContent (intent); // 줄 28이 줄에 와트가 틀렸다고 말해 주시겠습니까 ?? – Hisenberg

+0

xml 파일의 tabhost가 android : id = "@ android : id/tabhost"로 선언되었는지 확인하십시오. –

관련 문제