繁体   English   中英

单击列表视图项后启动活动?

[英]Starting an activity after a listview item is clicked?

好的,所以我有一个包含一些教程的应用程序。(大约 20 个)(每个 tut 只是填充在活动屏幕中的一些文本)

我想在主菜单上创建一个按钮,它指向一个列表视图活动,其中包含所有教程活动的名称 - 按字母顺序排列。

不完美的导航,我知道。 但在我了解更多信息之前,我认为这是最好的快速简便的解决方案。

这就是问题所在:我只想说找出单击了哪个列表视图项,然后放置一个正常的 onclick() 打开相应的教程活动。

我究竟如何设置列表视图? 我知道正常的 onclick 是如何工作的……但是如何使用 listview 项目呢?

我从https://groups.google.com/forum/#!forum/android-developers来到这里

它说我们可以在这里问初学者问题,但人们似乎宁愿把宝贵的时间花在刻薄的身上。 是不是真的值得吗? 如果你知道请帮助我。 (一个代码示例会很棒,但任何帮助将不胜感激)

此示例显示如何初始化名为list1的listView并在布局文件res\\layout\\main.xml

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.main);
    ListView list = (ListView) findViewById(R.id.list1);
    String[] days = { "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" };
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, days);
    list.setAdapter(adapter);

    /**
      * go to next activity for detail image
      */
    list.setOnItemClickListener(new OnItemClickListener() {

       @Override
       public void onItemClick(AdapterView<?> parent, View v, final int position, long id) {
           System.out.println(v+position);
           Intent intent = new Intent(A.this, B.class);
           startActivity(intent);
        }
    });
}

以下是另外两个例子:

你必须使用

listview.setOnItemClickListener(new OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> adapterView, View view, int position, long id) {
            // start a new activity here        
        }
    });

其中position是列表中项目的位置。

看看这个美丽的Android ListViews简介 它包含大量解释和可下载的示例源代码。

当然,只要他们对一个以前没有解决过很多次的问题提出明确的问题,你就可以问初学者问题。 如果通过简单的网络搜索可以找到您的问题的答案,那么您应该在Stackoverflow上询问之前进行此研究工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM