안드로이드 개발 질문/답변
(글 수 45,052)
public class TabActivity extends android.app.TabActivity{
public TabHost tabHost;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.tab);
this.tabHost = getTabHost();
TabHost.TabSpec spec;
Intent intent;
intent = new Intent().setClass(this, FirstGroup.class);
spec = tabHost.newTabSpec("FirstGroup").setIndicator("타이머")
//,getResources().getDrawable(R.drawable.artists_pressed))
.setContent(intent);
tabHost.addTab(spec);
intent = new Intent().setClass(this, CTimer.class);
spec = tabHost.newTabSpec("CTimer").setIndicator("타이머시간")
//,getResources().getDrawable(R.drawable.artists_pressed))
.setContent(intent);
tabHost.addTab(spec);
intent = new Intent().setClass(this, ThirdGroup.class);
spec = tabHost.newTabSpec("ThirdGroup").setIndicator("수신번호")
//,getResources().getDrawable(R.drawable.artists_pressed))
.setContent(intent);
tabHost.addTab(spec);
intent = new Intent().setClass(this, CPassword.class);
spec = tabHost.newTabSpec("CPassword").setIndicator("비밀번호")
//.getResources().getDrawable(null))
.setContent(intent);
tabHost.addTab(spec);
intent = new Intent().setClass(this, Advice.class);
spec = tabHost.newTabSpec("Advice").setIndicator("도움말")
//.getResources().getDrawable(null))
.setContent(intent);
tabHost.addTab(spec);
tabHost.setCurrentTab(0);
}
} public class FirstGroup extends ActivityGroup{
public static FirstGroup group1;
private ArrayList<View> history1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.history1 = new ArrayList<View>();
group1 = this;
View view = getLocalActivityManager().startActivity("Timer", new
Intent(this, Timer.class)
.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP))
.getDecorView();
replaceView(view);
}
public void replaceView(View v) {
history1.add(v);
setContentView(v);
}
public void back() {
if(history1.size() > 0) {
history1.remove(history1.size()-1);
setContentView(history1.get(history1.size()-1));
}else {
finish();
}
}
public void onBackPressed() {
FirstGroup.group1.back();
return;
}
}
TabActivity로 레이아웃을 구성했는데요. 다른건 다 탭으로 잘 되는데
spec = tabHost.newTabSpec("FirstGroup").setIndicator("타이머")
//,getResources().getDrawable(R.drawable.artists_pressed))
.setContent(intent);
tabHost.addTab(spec);
FirstGroup만 안되더라구요. 디버깅해보니 tabHost.addTab(spec);여기서 멈춥니다.
그룹을 설정해서 하는거는 ThirdGroup과 FirstGroup 똑같이 코딩했습니다. 각각 레이아웃만 다르게 해서요...
ThirdGroup은 되는데 FirstGroup 만 안되는 이유는 FirstGroup내에 있는 액티비티들의 문제인거 맞나요?
FirstGroup 은 처음에 Timer액티비티로 시작해서 총 다섯개의 액티비티가 속해있는데, 매니페스트에 정의 다 해줫구...했는데 왜 안될까요..
혹시 TabActivity를 이와같이 만들떄 주의 사항같은거 있나요?



