Listview onClick不适用于覆盖Framelayout android



我有一个ListView。ListView的每个项目都有HorizontalScrollview和textview。水平滚动视图中有图像。我使用FrameLayout在水平滚动视图(左侧)上显示文本视图。

我可以做到。但当我点击TextView调用ListView的Long Click Listener时,会触发Image View的OnClick事件。

这里是ListView项的XML文件。

  <?xml version="1.0" encoding="utf-8"?>
<FrameLayout
android:id="@+id/linearLayoutListViewItem"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:descendantFocusability="blocksDescendants"
android:orientation="horizontal"
>
<HorizontalScrollView
    android:id="@+id/horizontalScrollView"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:scrollbars="none"
    >
    <LinearLayout
        android:id="@+id/linearLayout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:orientation="horizontal"
        >
        <!-- Adding images here programmatically..-->
    </LinearLayout>
</HorizontalScrollView>

<!-- Textview That i want to show on left side Above the images in         HorizontalScrollview-->
<gallery.com.activity.CustomTextView
    android:id="@+id/textview"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:background="#a0000000"
    android:gravity="center"
    android:padding="7dp"
    android:textSize="16dp"
    >
</gallery.com.activity.CustomTextView>
</FrameLayout>

另外,这是我的ListView XML文件。

<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
            xmlns:tools="http://schemas.android.com/tools"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            tools:context=".MainActivity"
    android:orientation="vertical">
<gallery.com.activity.DynamicListView
    android:id="@+id/listView"
    android:background="#0000"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:scrollbars="none"
    />
</LinearLayout>

那么,我该如何调用ListView的长点击监听器呢?请帮忙。如果你想进一步澄清这个问题,请告诉我。

您尝试过setOnItemLongClickListener

YourListView.setOnItemLongClickListener(new OnItemLongClickListener() {
        public boolean onItemLongClick(AdapterView<?> arg0, View arg1,
                int pos, long id) {
            //Whatyouwant
            return true;
        }
    }); 

将android:longClickable="true"添加到CustomTextView中。

最新更新