메인엑티비티가 탭액티비티를 상속받은 클래스라고 가정하고 대략 아래와 같이 2개의 액티비티를 추가했다면
static TabHost tabHost;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//TabActivity 내부의 TabHost객체를 가져옵니다.
tabHost = getTabHost();
// 인텐트 객체 변수를 선언합니다. 이 변수는 재사용 됩니다.
Intent intent;
//방목록 액티비티를 위한 인텐트를 생성합니다.
intent = new Intent().setClass(this, RoomList.class);
tabHost.addTab(tabHost.newTabSpec("Region").setIndicator("지역 방 목록", getResources().getDrawable(R.drawable.ic_launcher)).setContent(intent));
//참여목록 액티비티를 위한 인텐트를 생성하며 과정은 위와 같습니다.
intent = new Intent().setClass(this, Participants.class);
tabHost.addTab(tabHost.newTabSpec("Participant").setIndicator("참여목록", getResources().getDrawable(R.drawable.ic_launcher)).setContent(intent));
}
//--------------------------------------------------------------------------------------------------------------------
Participants 클래스 (2번째 탭) 에서는 버튼을 추가하여 클릭했을 때 변경하도록 했어요
Button bt = (Button)findViewById(R.id.button1);
bt.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
MainActivity.tabHost.setCurrentTab(0); // 해당 조건 만족시 요렇게 해주시면 될거 같네요
}
});