我有一个ListView,它有一个我从here: FlowTextView
获得的自定义TextView问题是如果我使用普通的默认TextView一切都很好,但是如果我使用这个自定义文本视图,如果在文本视图中单击,则所有Click事件(LongClick和OnClick)都不起作用,即click事件仅适用于此自定义TextView无法到达的位置(我的列表行的边缘)。
我试过了
机器人:descendantFocusability =" blocksDescendants"
机器人:可聚焦="假"
机器人:focusableInTouchMode ="真"
但它没有奏效,或者我做错了......如果您认为这些方法中的任何一种都有效,请详细说明如何使用
我在FlowTextView中的实现
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity"
android:background="#ff71ff34">
<uk.co.deanwild.flowtextview.FlowTextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/textView2"
android:text="Description"
android:textSize="24sp"
android:background="#1b1b1f"
android:textColor="@android:color/white">
<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:background="#ffffbb52"/>
</uk.co.deanwild.flowtextview.FlowTextView>
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="CodeLearn 1"
android:background="#1b1b1f"
android:textColor="@android:color/white"/></RelativeLayout>
在OnCreate中
ListView mainList = (ListView)findViewById(R.id.listView1);
new Connect(mainList,this).execute(aa);
mainList.setClickable(true);
mainList.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener()
{
public boolean onItemLongClick(AdapterView <?> arg0, View arg1,
int pos, long id) {
// TODO Auto-generated method stub
// Toast.makeText(this, "Wrong Username/Password! TRY AGAIN!", Toast.LENGTH_LONG).show();
Log.d("long clicked","pos: " + pos);
return true;
}
});
activity_main.xml,其中包含根列表视图
<ListView
android:id="@+id/listView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
xmlns:android="http://schemas.android.com/apk/res/android"></ListView>
答案 0 :(得分:1)
正如@Vikram在评论中所说的
检查FlowTextView.java的第88行:链接。那应该回答你的问题 问题
所以基本上解决方案是将该对象的setOnTouchListener设为null
setOnTouchListener(null)