Android 在ListView中按下ImageButton元素时如何获取ListItem位置

Android 在ListView中按下ImageButton元素时如何获取ListItem位置,android,Android,我有一个自定义列表视图 我正在使用布局构造的列表视图的每个项 我的布局将有4个文本视图和一个图像按钮。。我的listview大小是10个元素 现在,我需要根据按钮按下的位置启动不同的活动 比如,若用户按下第三个列表项ImageButton,那个么我需要显示第三个活动 我面临的问题是无法获取ImageButton的位置号 我添加了“setOnItemClickLIstener()”,但当按下imagebutton时,不会调用它 请帮助我如何获取按下的ImageButton的位置…有两种方法,一种是

我有一个自定义列表视图

我正在使用布局构造的列表视图的每个项

我的布局将有4个文本视图和一个图像按钮。。我的listview大小是10个元素

现在,我需要根据按钮按下的位置启动不同的活动

比如,若用户按下第三个列表项ImageButton,那个么我需要显示第三个活动

我面临的问题是无法获取ImageButton的位置号

我添加了“setOnItemClickLIstener()”,但当按下imagebutton时,不会调用它


请帮助我如何获取按下的ImageButton的位置…

有两种方法,一种是将侦听器放在按钮上,然后在适配器上,您应该在每个按钮上放置一个侦听器,在这些侦听器上,您已经放置了要调用的正确活动

或者您不能将侦听器放在按钮上并在列表中使用setOnItemClickListener,那么您就有了自己的位置并可以开始正确的活动。

在您适配器的getview()方法中。。。把这个方法

  mybutton.setOnClickListener(new OnClickListener() {
 private int pos = position;

  @Override
 public void onClick(View v) {
 Toast.makeText(context, "position="+ String.valueOf(pos), Toast.LENGTH_SHORT).show();

  }
 });
这将为我们的立场干杯。。。(或者你可以得到位置的值)

我用这种方法求解。 在适配器的getview()方法中,我将标记设置为ImageButton,并将其保存在 setOnClickListener方法供以后使用。holder是getView()方法内部使用的静态类


只需将其放入XML文件中:

<ListView  
....
....
android:focusable="false"
android:focusableInTouchMode="false"/>   

<ListView  
....
....
android:focusable="false"
android:focusableInTouchMode="false"/>