嘿那里,我一直在寻找堆栈溢出来解决同样的问题,但我似乎无法使它工作,我拼命地希望有人可以提供帮助!
我有三个标签,每个标签都有自己的活动。在第一个选项卡中,我在选项卡中实现了一个列表,它有一些显示没有问题的值。其他两个选项卡具有表格布局。
这是问题所在: 我需要在点击任何列表项时切换到第二个标签。
我该怎么做?我在互联网上阅读了几个关于注册意图的页面,但似乎无法使用tabHost实现listView。
以下代码!
非常感谢。
公共类AlertsActivity扩展TabActivity实现OnTabChangeListener,OnClickListener { private static final String LIST1_TAB_TAG =“已保存的警报”; private ListView listView1; 私人TabHost tabHost;
@Override
public boolean onCreateOptionsMenu(Menu menu)
{
super.onCreateOptionsMenu(menu);
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item)
{
switch (item.getItemId())
{
case R.id.settings:
startActivity(new Intent(this, Prefs.class));
return true;
}
return false;
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.tab1);
tabHost = getTabHost();
tabHost.setOnTabChangedListener(this);
listView1 = (ListView) findViewById(R.id.list);
List<String> listStrings1 = new ArrayList<String>();
listStrings1.add("Item 1");
listStrings1.add("Item 2");
listStrings1.add("Item 3");
listStrings1.add("Item 4");
listStrings1.add("Item 5");
listStrings1.add("Item 6");
listStrings1.add("Item 7");
listStrings1.add("Item 8");
listStrings1.add("Item 9");
listStrings1.add("Item 10");
listView1.setAdapter(new ArrayAdapter(this, android.R.layout.simple_list_item_1, listStrings1));
tabHost.addTab(tabHost.newTabSpec(LIST1_TAB_TAG).setIndicator(LIST1_TAB_TAG).setContent(new TabContentFactory() {
public View createTabContent(String arg0) {
return listView1;
}
}));
}
public void onTabChanged(String tabName) {
if(tabName.equals(LIST1_TAB_TAG)) {
}
}
public void onClick(View src) {
}
}
答案 0 :(得分:1)
在你的听众中,(在你的TabActivity中)只需:
getTabHost().setCurrentTab(index);
TabHost documentation用于setCurrentTab(int)
对于getTabHost(),