我们有ListView
动态内容,我们只能点击文字,而不是整个项目(这意味着短文本意味着一个小的触摸区域)
我们的ListView:
ListView lv = getListView();
lv.setTextFilterEnabled(true);
lv.setOnItemClickListener(this);
我们需要做些什么来使整个项目可以点击而不仅仅是文本
答案 0 :(得分:3)
请务必使用您正在使用的textview完成listview的所有内容,并将其放置在其属性中:
android:layout_width="match_parent"
答案 1 :(得分:0)
您需要拦截textview父级中的触摸事件。见onInterceptTouchEvent
答案 2 :(得分:0)
设置 listView 的布局宽度以匹配它的父级:
[HttpPost]
public ActionResult Index(string stringID)
{
var ID = Request.Form[0].ToString();
var date = Convert.ToDateTime(Request.Form[1]);
string strSQL = "UPDATE bp_open_issues SET WhenFixed = '" + date + "' WHERE ID = '" + ID + "' ";
SqlConnection con =
new SqlConnection("Data Source=10.67.XX.XXX;Initial Catalog=XXX111; User Id=XXXXXX; Password=XXXXXX;");
SqlCommand cmd = new SqlCommand(strSQL, con);
con.Open();
cmd.ExecuteNonQuery();
TempData["msg"] = "<script>alert('Change succesfully');</script>";
return Redirect("/");
}
否则,虽然该行似乎是屏幕的整个宽度,但列表视图实际上并非如此。
答案 3 :(得分:0)
就我而言,我在DialogFragment中使用了ListView + ArrayAdapter。所有android:layout_width
都是正确的。
val adapter = ArrayAdapter(requireContext(), android.R.layout.simple_list_item_1, options)
listView.adapter = adapter
所以我将DialogFragment更改为Fragment,它可以工作-现在整个列表项都是可单击的...