0

3つのタブを持つタブホストがあります。タブ3には、アクティビティがありますtestActivity。このアクティビティでは、ボタンがあります。タブ3でこのボタンをクリックすると、タブホストがタブ1に切り替わります。自動的に切り替わります。タブ1をクリックしません。どうすればよいですか?

public class TabhostActivity extends Activity{
public TabHost tabHost;
private Resources res;
Intent intent;
TabHost.TabSpec spec;
private LocalActivityManager mLocalActivityManager;
protected int currentTab;

@Override
protected void onCreate(Bundle savedInstanceState) 
{
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.tabhost);
    tabHost = (TabHost) findViewById(R.id.tabhost);
    mLocalActivityManager = new LocalActivityManager(this, false);
    mLocalActivityManager.dispatchCreate(savedInstanceState);
    tabHost.setup(mLocalActivityManager);
    res = getResources();
    intent = new Intent().setClass(this, SpinnerActivity.class);
    spec = tabHost.newTabSpec("artists");

    spec.setIndicator("Sinner", null);
    spec.setContent(intent);
    tabHost.addTab(spec);

    intent = new Intent().setClass(this, SonAndroidActivity.class);
    spec = tabHost.newTabSpec("MAIN");
    spec.setIndicator("MAIN",res.getDrawable(R.drawable.ios_logo));
    spec.setContent(intent);
    tabHost.addTab(spec);


    intent = new Intent().setClass(this, testActiviy.class);
    spec = tabHost.newTabSpec("Spinner");
    spec.setIndicator("TEST", null);
    spec.setContent(intent);
    tabHost.addTab(spec);
}

    tabHost.setOnTabChangedListener(new OnTabChangeListener() {

        @Override
        public void onTabChanged(String tabId) {
            Log.v("tag", "click:" + tabHost.getCurrentTab());
            currentTab = tabHost.getCurrentTab();                   
}

およびイベントアクティビティタブ3:

public class testActiviy extends TabhostActivity{
    @Override
    protected void onCreate(Bundle savedInstanceState) {
      // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.test);
    }

    public void btn_onClick(View v)
    {   
        tabHost.setCurrentTab(0);
        Log.v("tag", "clickkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk");    
    }
}
4

2 に答える 2

0
public void btn_onClick(View v)
{
    LocalActivityManager l = new LocalActivityManager ();
    l.tabHost.setCurrentTab(0);
}
于 2012-06-05T04:27:42.620 に答える
0

onClickまず、メソッドで tabHost への参照を取得してみてくださいgetParent()

于 2012-06-05T04:20:59.120 に答える