A、B の 2 つのアクティビティがあります。1 つ目は TabActivity で、2 つ目はアクティビティです。A の内部には、他のアクティビティを呼び出すためのクリック可能なボタンがあります。
public class A extends TabActivity implements OnClickListener {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
tabHost = getTabHost();
tabHost.addTab(tabHost.newTabSpec("a").setContent(R.id.a).setIndicator("a"));
b = new Intent(this,B.class);
tabHost.addTab(tabHost.newTabSpec("b").setContent(b)
.setIndicator(this.getString(R.string.b)));
btn.setOnClickListener(this);
}
public void onClick(View arg0) {
if (arg0 == btn) {
startActivity(b);
}
}
}
B の内部には、A クラスのボタンがクリックされるたびにインターネットからデータを取得するスレッドがあります。
public class B extends Activity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.search_result);
searchHandler = new Handler() {
@Override
public void handleMessage(Message msg) {
draw(msg.obj.toString());
}
}
Intent intent = getIntent();
if(..)
sendHttpRequest();
}
データは正しく返され、管理できますが、タブホストが消えます。どうすれば解決できますか?