【问题标题】:Changing Activities in Android - List inside Tab更改 Android 中的活动 - 选项卡内的列表
【发布时间】:2011-08-30 18:01:09
【问题描述】:

嘿,我一直在搜索堆栈溢出问题,但我似乎无法让它工作,我非常希望有人能提供帮助!

我有三个选项卡,每个选项卡都有自己的活动。在第一个选项卡中,我在选项卡中实现了一个列表,它有一些显示没有问题的值。其他两个选项卡有表格布局。

问题来了: 单击任何列表项时,我需要切换到第二个选项卡。

我该怎么做?我已经阅读了互联网上有关注册意图的几页,但似乎无法使用实现 listView 的 tabHost 进行任何操作。

代码如下!

非常感谢。

公共类 AlertsActivity 扩展 TabActivity 实现 OnTabChangeListener, OnClickListener { private static final String LIST1_TAB_TAG = "已保存警报"; 私有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) {

}

}

【问题讨论】:

    标签: android list android-activity tabs switch-statement


    【解决方案1】:

    在您的侦听器中,(在您的 TabActivity 中)只需执行以下操作:

    getTabHost().setCurrentTab(index);
    

    TabHost documentation 用于 setCurrentTab(int)

    TabActivity documentation 用于 getTabHost()

    【讨论】:

      猜你喜欢
      • 2011-08-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多