如何处理列表视图中的点击(带图标)?

时间:2012-02-02 16:16:34

标签: android android-widget

我需要在Activity中使用图标实现列表视图,但此活动中还有其他小部件 - 如按钮。此活动有一个布局文件。

刚开始我看到了这个教程(http://www.mkyong.com/android/android-listview-example/),但意识到这不是我需要的......因为它将Activity扩展到了ListActivity。但我不能简单地将我的Activity更改为ListActivity,因为我有按钮和其他东西......

所以我不明白如何以这种方式实现它......

所以改为使用本教程实现它......

http://www.ezzylearning.com/tutorial.aspx?tid=1763429&q=customizing-android-listview-items-with-custom-arrayadapter

直到我意识到我不知道如何获得点击后才能发挥作用......

我将此代码放入我的活动中......

        listView1.setOnItemClickListener(new OnItemClickListener() {

        public void onItemClick(AdapterView<?> parent, View view,
                int position, long id) {

            //get selected items
            String selectedValue = Integer.toString(position);
            Toast.makeText(parent.getContext(), selectedValue, Toast.LENGTH_SHORT).show();
        }

...至少它会显示在Toast中选择的项目的数量...

但我现在不知道如何与我的Activity或任何与我的Activity相关的对象共享此选择...

这是一个死路一条? “天气教程”列表视图是否为只读目的?而不是用户互动?

任何建议表示赞赏。如果可能的话,我最想简单地使用天气教程示例,因为我已经以这种方式实现了它......

但如果有人能解释第一个教程的方法与我如何使用列表视图类之间的理论,而不是在我的主Activity(包含按钮和其他东西)中扩展ListActivity,那就太棒了......

4 个答案:

答案 0 :(得分:1)

试试这个link并说出你在寻找什么?

答案 1 :(得分:0)

列表视图中的项目点击监听器主要用于导航到另一个活动或显示有关所点击项目的信息。

有位置,你可以从数组或arraylist中获得点击的项目。对应于该项目,您可以执行操作。

答案 2 :(得分:0)

使用单身架构

在您的活动中声明一个静态方法,例如:“demoActivity”

public demoActivity extends Activity
{
private static demoActivity sInstance;

   @Override
    public void onCreate(Bundle savedInstance){
      sInstance=this;
     }

    public static demoActivity getInstance()
    {
         return sInstance;
    }
}

通过使用此实例,您可以使用该活动。

答案 3 :(得分:-2)

试试这个:

Toast.makeText(parent.getContext(), "" + position, Toast.LENGTH_SHORT).show();