
我做了一个自定义的ListVIEw.我正在尝试通过ArrayList填充ListVIEw.我可以成功地以字符串形式发送数据以填充ListVIEw,但不能以ArrayList形式发送.仅显示具有arrayList的所有值的单行.
主要活动
public class MainActivity extends Activity {ArrayList<Product> products = new ArrayList<Product>();Adapter ListvIEwAdapter;List arrList = new ArrayList(); public voID onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentVIEw(R.layout.activity_main); arrList.add("1"); arrList.add("2"); fillData(); ListvIEwAdapter = new Adapter(this, products); ListVIEw lvMain = (ListVIEw) findVIEwByID(R.ID.lvMain); lvMain.setAdapter(ListvIEwAdapter); } voID fillData() { products.add(new Product(arrList.toString(),false)); //problem is here i suppose }}Adapter.java
public class Adapter extends BaseAdapter {Context ctx;LayoutInflater linflater;ArrayList<Product> objects;Adapter(Context context, ArrayList<Product> products) { ctx = context; objects = products; linflater = (LayoutInflater) ctx .getSystemService(Context.LAYOUT_INFLATER_SERVICE);}@OverrIDepublic int getCount() { return objects.size();}@OverrIDepublic Object getItem(int position) { return objects.get(position);}@OverrIDepublic long getItemID(int position) { return position;}@OverrIDepublic VIEw getVIEw(int position, VIEw convertVIEw, VIEwGroup parent) { VIEw vIEw = convertVIEw; if (vIEw == null) { vIEw = linflater.inflate(R.layout.item, parent, false); } Product p = getProduct(position); ((TextVIEw) vIEw.findVIEwByID(R.ID.tvDescr)).setText(p.name); CheckBox cbBuy = (CheckBox) vIEw.findVIEwByID(R.ID.cbBox); return vIEw;}Product getProduct(int position) { return ((Product) getItem(position));}}产品.java
public class Product {String name;boolean selected; Product( String items, boolean _Box) { name = items; selected = _Box; }}解决方法:
尝试通过迭代ArrayList将每个ArrayList项目添加到Product对象:
for(String row :arrList) { products.add(new Product(row, false));}将arrList定义为String ArrayList而不是通用类型List:
ArrayList<String> arrList = new ArrayList<String>(); 总结 以上是内存溢出为你收集整理的java-将arraylist添加到自定义listview全部内容,希望文章能够帮你解决java-将arraylist添加到自定义listview所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)