【问题标题】:onItemClick fires only on text not on the entire row of ListViewonItemClick 仅在文本上触发,而不是在 ListView 的整行上触发
【发布时间】:2013-09-03 01:37:38
【问题描述】:

在针对 API 11 到 18 的 Android 应用程序上,我使用字符串数组动态填充了 ListView,并为每一行添加了一个侦听器。文本通常只占一行的大约 50%。问题是,如果我单击实际文本,则会触发 onItemClick 操作,但如果单击行的空白部分则不会。

我的问题是:如何将侦听器添加到每行的整个区域/视图中?

public class MainActivity extends ActionBarActivity {

protected void onCreate(Bundle savedInstanceState) {

...

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.layout.activity_list_item, my_array);
ListView listview = (ListView) findViewById(R.id.listView1);
listview.setAdapter(adapter);

// add listener
listview.setOnItemClickListener(new OnItemClickListener() {
    public void onItemClick(AdapterView<?> parent, View v, int position, long id)                   {

        Log.d(TAG, "position=" + position);

    }
});

activity_main.xml:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:android1="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" 
    android:orientation="vertical">

    <ListView
        android:id="@+id/listView1"
        android:layout_width="wrap_content"
        android:layout_height="0dp"
        android:layout_weight=".80"
        >
    </ListView>

activity_list_item.xml:

<?xml version="1.0" encoding="utf-8"?>

        <TextView xmlns:android="http://schemas.android.com/apk/res/android"    
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/my_textview"
        android:textSize="35sp"
/>

【问题讨论】:

  • 编辑您的问题并发布此文件的代码:R.layout.activity_list_item
  • 完成,我想我需要设置 android:layout_height="match_parent"。

标签: android listview android-listview onitemclicklistener onitemclick


【解决方案1】:

将activity_list_item中TextViewlayout_width设置为match_parent

【讨论】:

  • 按照您的指示解决了,但我也必须将 ListView 的“layout_width”设置为“match_parent”。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-08-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-22
相关资源
最近更新 更多