Я работаю над приложением, которое извлекает информацию из Интернета. Информация сортируется по категориям, подкатегориям и подкатегориям.Изменить вкладку хоста
Моим главным видом является представление TabHost (родительские категории) с 3 вкладками и начальным списком (подкатегории). Когда пользователь нажимает элемент в представлении списка, он вызывает новое представление списка, которое отображает дочерние категории выбранной подкатегории.
У меня есть все, чтобы работать, за исключением того, что при выборе подкатегории вид tabHost исчезает, а под-подкатегории отображаются в полноэкранном режиме.
Как я могу изменить намерение вкладки для отображения дочерних категорий подкатегории?
EDIT: вот мой код, извините, что я не размещал его раньше!
Мой Главный вид, который содержит tabhost:
public class tabwidget extends TabActivity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.tabs);
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, category1Activity.class);
// Initialize a TabSpec for each tab and add it to the TabHost
spec = tabHost.newTabSpec("category1").setIndicator("Category1",
res.getDrawable(R.drawable.ic_tab_category1))
.setContent(intent);
tabHost.addTab(spec);
// Do the same for the other tabs
intent = new Intent().setClass(this, category2Activity.class);
spec = tabHost.newTabSpec("category2").setIndicator("Category2",
res.getDrawable(R.drawable.ic_tab_category2))
.setContent(intent);
tabHost.addTab(spec);
intent = new Intent().setClass(this, category3Activity.class);
spec = tabHost.newTabSpec("category3").setIndicator("Category3",
res.getDrawable(R.drawable.ic_tab_category3))
.setContent(intent);
tabHost.addTab(spec);
tabHost.setCurrentTab(0);
}
Когда приложение запускается на вкладку алкоголя выбирается по умолчанию. Это category1Acitivity ListView с onlclick действия, называет детей-категории:
listView.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
//Toast.makeText(getApplicationContext(), "You clicked item at position"+position,
//Toast.LENGTH_SHORT).show();
Toast.makeText(getApplicationContext(), "Loading "+((TextView) view.findViewById(R.id.categoryname)).getText(),
Toast.LENGTH_SHORT).show();
Intent i = new Intent(category1Activity.this, subCategoryActivity.class);
i.putExtra("id", ((TextView) view.findViewById(R.id.message)).getText());
i.putExtra("catname", ((TextView) view.findViewById(R.id.categoryname)).getText());
i.putExtra("parentcatid", "0");
startActivityForResult(i, ACTIVITY_CREATE);
}
});
В ListViews порождаются категории Id, который посылается на сервер тянет результаты из базы данных.
благодарит вас так много! это прекрасно, и после небольшой тонкой настройки мне удалось заставить его работать :) –
Добро пожаловать :) – Dante