gpt4 book ai didi

android - Horizo​​ntalScrollView的点击事件

转载 作者:行者123 更新时间:2023-11-29 17:59:15 24 4
gpt4 key购买 nike

我有一个 horizo​​ntalscrollview,里面有一堆图片。现在我需要检测点击事件,以防在其中点击任何图像。简而言之,我需要放置在 horizo​​ntalscrollview 中的图像的索引,该图像被单击。

<HorizontalScrollView
android:id="@+id/horizontalScrollView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/bgcolor" >

<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal" >

<ImageView
android:id="@+id/imageview1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingRight="20dp"
android:src="@drawable/image1" />

<ImageView
android:id="@+id/imageview2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingRight="20dp"
android:src="@drawable/image2" />

我试着玩弄 OnTouchListener 事件,但即使在滚动时也会被触发。而且无论您点击哪里,OnClickListener 都不会被触发。

horizontalScrollView1.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
System.out.println("Testing scrollview");
}
});

是否有解决方法来获取 horizo​​ntalscrollview 中存在的已单击图像的索引?我想它可以通过“画廊”小部件来实现,但在 API16 中已弃用。谁能分享一种通过 Horizo​​ntalScrollView 实现此目的的方法?

最佳答案

OnClickListener 附加到 Horizo​​ntalScrollView 中的每个 ImageView 小部件。根据传递给 onClick()View,您将知道点击了哪个 ImageView

具体来说:

  • android:onClick="heyMyImageGotClickedWhoHoo" 添加到布局中的每个 ImageView 元素。

  • 在加载此布局的 Activity 中实现 public void heyMyImageGotClickedWhohoo(View v) 方法。在正文中,您可以使用 v.getId() 并将其与 ImageView 小部件 ID(例如,R.id.imageview1)进行比较以确定点击了哪些内容。

或者,您可以为每个 ImageView 创建专用方法,而不是将它们全部路由到一个。在这种情况下,每个 android:onClick 属性将具有不同的值(例如,omgTheFirstImageWasClicked),并在 Activity 中使用匹配的方法(例如,public void omgTheFirstImageWasClicked (查看 v))。

关于android - Horizo​​ntalScrollView的点击事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17155181/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com