Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/198.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 自定义listview项的setOnClickListener不';我不能在安卓1.5上工作_Android_Listview_Android Listview - Fatal编程技术网

Android 自定义listview项的setOnClickListener不';我不能在安卓1.5上工作

Android 自定义listview项的setOnClickListener不';我不能在安卓1.5上工作,android,listview,android-listview,Android,Listview,Android Listview,我知道有很多类似的问题,但我没有找到一个有效的解决方案。我有一个类似于此的listview布局: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:orientation="horizontal" &g

我知道有很多类似的问题,但我没有找到一个有效的解决方案。我有一个类似于此的listview布局:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:orientation="horizontal" >

    <LinearLayout
        android:id="@+id/layout_main"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="horizontal" >

        <TextView
            android:id="@+id/text1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical"
            android:gravity="center_vertical"
            android:singleLine="true" />
    </LinearLayout>

</RelativeLayout>
mHolder.firstLayout.setOnClickListener
convertView.setOnClickListener
不工作,但:

mListView.setOnItemClickListener(new OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
        android.util.Log.e("TAG", "mListView  onClick");

    }
});

没有理由为getView()中的每个项目设置侦听器。

这可能会产生更多的问题。保持简单,只为onCreate()中的ListView设置一个
侦听器

更改您的
getView()


这应该可以解决您的问题。

为什么要设置listview项目上的单击?你能对你的听众做同样的事吗?其中一个参数是视图,所以我看不出问题所在。任何其他方法,都可以将listview项设置为可单击。因为我有一个复杂的listview项,所以我不能使用onItemClickListenerjust do view.getHolder()我有一个复杂的listview项,上面只是一个测试示例,以显示自定义视图的内部getView侦听器不起作用。
mListView.setOnItemClickListener(new OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
        android.util.Log.e("TAG", "mListView  onClick");

    }
});
It works good for 2.3 but doesn't work for 1.5, I need to get it working exactly for 1.5
    @Override
    public View getView(int arg0, View convertView, ViewGroup arg2) {

        if (convertView == null) {

            mHolder = new Holder();
            convertView = mInflater.inflate(R.layout.item_list_1, null);
            mHolder.firstLayout = (LinearLayout) convertView.findViewById(R.id.layout_main);
            mHolder.text1 = (TextView) convertView.findViewById(R.id.text1);

            convertView.setTag(mHolder);
        }

        mHolder = (Holder) convertView.getTag();
        mHolder.text1.setText("text");


        return convertView;
    }