У меня есть TabActivity, который содержит много вкладок. Каждая вкладка относится к одной и той же активности, однако логика выполняется внутри действия, которое определяет, что нужно загружать. Я хотел бы, чтобы это было сделано путем передачи логического значения на соответствующую вкладку. Как я могу это сделать?Как я могу передать дополнения в намерение внутри TabActivity?
package com.stocktwits.activity;
import android.app.TabActivity;
import android.content.Intent;
import android.content.res.Resources;
import android.os.Bundle;
import android.widget.TabHost;
public class StockTwitsTabActivity extends TabActivity{
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.stocktwits_tab_activity);
Resources res = getResources(); // Resource object to get Drawables
TabHost tabHost = getTabHost(); // The activity TabHost
TabHost.TabSpec spec; // Resusable TabSpec for each tab
Intent intent; // Reusable Intent for each tab
// Create an Intent to launch an Activity for the tab (to be reused)
intent = new Intent().setClass(this, StreamActivity.class);
// Initialize a TabSpec for each tab and add it to the TabHost
intent.putExtra("reloadAll", true);
spec = tabHost.newTabSpec("all").setIndicator("All",res.getDrawable(R.drawable.icon)).setContent(intent);
tabHost.addTab(spec);
// Do the same for the other tabs
intent = new Intent().setClass(this, StreamActivity.class);
spec = tabHost.newTabSpec("home").setIndicator("Home",res.getDrawable(R.drawable.icon)).setContent(intent);
tabHost.addTab(spec);
intent = new Intent().setClass(this, StreamActivity.class);
spec = tabHost.newTabSpec("mentions").setIndicator("Mentions",res.getDrawable(R.drawable.icon)).setContent(intent);
tabHost.addTab(spec);
intent = new Intent().setClass(this, StreamActivity.class);
spec = tabHost.newTabSpec("directs").setIndicator("Directs",res.getDrawable(R.drawable.icon)).setContent(intent);
tabHost.addTab(spec);
intent = new Intent().setClass(this, StreamActivity.class);
spec = tabHost.newTabSpec("more").setIndicator("More",res.getDrawable(R.drawable.icon)).setContent(intent);
tabHost.addTab(spec);
tabHost.setCurrentTab(0);
}
}
Почему вы используете активность вместо вид, если вид всегда одинаков для каждой вкладки? Я думаю, вы можете использовать 'android.widget.TabHost.OnTabChangeListener' и обрабатывать здесь содержимое основного вида –
, можете ли вы предоставить мне пример TabHost, который загружает представления вместо действий? –