1

我正在使用以下代码在 tabHost 上添加选项卡,但在第一行到最后一行 spec.setContent(intent) 上崩溃。调试器说的不多。谢谢你。

从注册处,

Intent intentIOS = new Intent(Registrat.this, TabBar_Activity.class);
Bundle bundle = new Bundle();
bundle.putString("idusuari", idusuari);
String appid = null;

从 TabBar_Activity,

private void setTabs(String numTabs){

        addTab(tab1name, "tab1", myTab1.class);
        addTab(tab2name, "tab2", myTab2.class);
}

private void addTab(String labelId, String imageName, Class<?> c)
    {
      TabHost tabHost = getTabHost();
          Intent intent = new Intent(this, c);
          TabHost.TabSpec spec = tabHost.newTabSpec("tab" + labelId); 

          View tabIndicator = LayoutInflater.from(this).inflate(R.layout.tab_indicator, getTabWidget(), false);
          TextView title = (TextView) tabIndicator.findViewById(R.id.title);
          title.setText(labelId);    

          spec.setIndicator(tabIndicator);
          spec.setContent(intent);
          tabHost.addTab(spec);
    }

05-25 11:18:49.725: E/AndroidRuntime(428): FATAL EXCEPTION: main
05-25 11:18:49.725: E/AndroidRuntime(428): java.lang.IllegalStateException: Could not execute method of the activity
05-25 11:18:49.725: E/AndroidRuntime(428):  at android.view.View$1.onClick(View.java:2072)
05-25 11:18:49.725: E/AndroidRuntime(428):  at android.view.View.performClick(View.java:2408)
05-25 11:18:49.725: E/AndroidRuntime(428):  at android.view.View$PerformClick.run(View.java:8816)
05-25 11:18:49.725: E/AndroidRuntime(428):  at android.os.Handler.handleCallback(Handler.java:587)
05-25 11:18:49.725: E/AndroidRuntime(428):  at android.os.Handler.dispatchMessage(Handler.java:92)
05-25 11:18:49.725: E/AndroidRuntime(428):  at android.os.Looper.loop(Looper.java:123)
05-25 11:18:49.725: E/AndroidRuntime(428):  at android.app.ActivityThread.main(ActivityThread.java:4627)
05-25 11:18:49.725: E/AndroidRuntime(428):  at java.lang.reflect.Method.invokeNative(Native Method)
05-25 11:18:49.725: E/AndroidRuntime(428):  at java.lang.reflect.Method.invoke(Method.java:521)
05-25 11:18:49.725: E/AndroidRuntime(428):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)

并跟随...

4

1 回答 1

1

要设置选项卡,我正在使用以下代码,它工作正常。

TabHost tabHost = getTabHost();

// Tab for Photos
TabSpec photospec = tabHost.newTabSpec("Photos");
// setting Title and Icon for the Tab
photospec.setIndicator("Photos", getResources().getDrawable(R.drawable.icon_photos_tab));
Intent photosIntent = new Intent(this, PhotosActivity.class);
photospec.setContent(photosIntent);

// Tab for Songs
TabSpec songspec = tabHost.newTabSpec("Songs");
songspec.setIndicator("Songs", getResources().getDrawable(R.drawable.icon_songs_tab));
Intent songsIntent = new Intent(this, SongsActivity.class);
songspec.setContent(songsIntent);
 // Adding all TabSpec to TabHost
tabHost.addTab(photospec); // Adding photos tab
tabHost.addTab(songspec); // Adding songs tab
于 2012-05-25T12:00:43.433 回答