listview-android 点击动态添加view组成的listView的item时,显示出问题

问题描述

android 点击动态添加view组成的listView的item时,显示出问题

android  listview中的item是动态添加的view, 点击item内的其中一个view时,显示的永远是页面上显示出来的的最后一个item的最后一个view中的值

List carLists = ci.getCarLists();
for (CarModle cm : carLists) {
typeSeries = cm.getTypeSeries();
typeName = cm.getTypeName();
LinearLayout layout = new LinearLayout(mActivity);
LayoutParams params = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
layout.setLayoutParams(params);
layout.setOrientation(LinearLayout.HORIZONTAL);
layout.setPadding(50, 20, 20, 20);
TextView tv_typeSeries = new TextView(mActivity);
tv_typeSeries.setText(typeSeries);
TextView tv_typeName = new TextView(mActivity);
tv_typeName.setText(typeName);
tv_typeName.setLeft(20);
layout.addView(tv_typeSeries, params);
layout.addView(tv_typeName, params);
holder.layout_carInfo.addView(layout, params);
}

    holder.layout_carInfo.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            Toast.makeText(mActivity, typeSeries + typeName, Toast.LENGTH_SHORT).show();
        }
    });

解决方案

已解决,谢谢各位,,,,,

解决方案二:

用setItemOnClickListener试试

解决方案三:

具体实现要求是这样的

解决方案四:

for (CarModle cm : carLists) {
typeSeries = cm.getTypeSeries();
typeName = cm.getTypeName();
......
holder.layout_carInfo.addView(layout, params);
}
你的for循环执行完后,typeSeries和typeName指向最后一个item的数据,在onclick事件中当然会显示最后一条数据的信息啦。
可以在for循环内部中添加layout的onclick事件,对给个item添加onclick监听不就行了嘛。

时间: 2025-01-30 05:21:05

listview-android 点击动态添加view组成的listView的item时,显示出问题的相关文章

Android viewpager中动态添加view并实现伪无限循环的方法_Android

本文实例讲述了Android viewpager中动态添加view并实现伪无限循环的方法.分享给大家供大家参考,具体如下: viewpager的使用,大家都熟悉,它可以实现页面之间左右滑动的切换,这里有一个需求,就是viewpager里面加载的页数不是确定的,而是根据数据的多少来确定的.常见的应用就是在一个新闻的详细页面中,显示与此新闻有关的图片. 下面我们来看一下代码: activity_main.xml <RelativeLayout xmlns:android="http://sch

Android viewpager中动态添加view并实现伪无限循环的方法

本文实例讲述了Android viewpager中动态添加view并实现伪无限循环的方法.分享给大家供大家参考,具体如下: viewpager的使用,大家都熟悉,它可以实现页面之间左右滑动的切换,这里有一个需求,就是viewpager里面加载的页数不是确定的,而是根据数据的多少来确定的.常见的应用就是在一个新闻的详细页面中,显示与此新闻有关的图片. 下面我们来看一下代码: activity_main.xml <RelativeLayout xmlns:android="http://sch

android开发中动态添加view的两个实例

举个例子:比如要在一个LinearLayout中添加一个Button,  子view是Button,父view是LinearLayout. 子view的属性就是通过LayoutParams来设置的,注意是LinearLayout.LayoutParams,因为子view的高度,宽度这些都是针对父view的,要告诉父view自己要占用多大空间,所以是LinearLayout(原来总是会用子view的LayoutParams来设置,错误) public class MyActivity extend

动态添加 iew不可重叠-android动态添加View并位置随机

问题描述 android动态添加View并位置随机 解决方案 1.添加view直接采用addview就可以了2.可以采用RelativeLayout或者framelayout布局方式,这上面添加的组件可以通过设置left和top或者设置leftmargintopmargin也行,实现绝对定位3.组件不重叠需要自己记录下来一个rect集合,在添加的时候进行判断添加的view是否会重叠.以及可以添加的坐标. 解决方案二: http://embed.21ic.com/software/android/

Android动态添加View的问题解决方法_Android

后台代码 复制代码 代码如下:     private void ChangeView()    {        ly.removeAllViews();        LayoutInflater inflater = (LayoutInflater)getSystemService(LAYOUT_INFLATER_SERVICE);        View layout = inflater.inflate(R.layout.grid,null);        GridView grid

Android动态添加View的问题解决方法

后台代码复制代码 代码如下:    private void ChangeView()    {        ly.removeAllViews();        LayoutInflater inflater = (LayoutInflater)getSystemService(LAYOUT_INFLATER_SERVICE);        View layout = inflater.inflate(R.layout.grid,null);        GridView gridvi

揭秘在ListView等AdapterView上动态添加删除项的陷阱_Android

如何避开在ListView等AdapterView上动态添加删除项的陷阱,下面就为大家分享,具体内容如下 首先,定义如下array资源,作为列表的加载内容: <resources> <string name="app_name">MyListView</string> <string-array name="language"> <item>Java</item> <item>C&l

androidui-android gridview动态添加view

问题描述 android gridview动态添加view 如何实现gridview动态添加view,最近在做一个项目,需要实现新闻订阅的功能.点击有加号的imageview,可以实现动态订阅新闻.很急!!!刚刚接触androidUI,还是新手,希望大家多多指教!!谢谢啦~~

android ListView中自定义SimpleAdapter动态添加ratingBar及图片更新

android中listView的实现有多种方式,但是当我们利用simpleAdapter实现listView的时候,SimpleAdapter并没有提供显示一个ratingBar的功能(即上面的星星用来评分的控件).要实现上面的功能,我们可以通过继承SimpleAdapter类重写其中一些方法来实现.下面即是此类的实现: package nate.android.Service; import java.util.List; import java.util.Map; import com.n