无法从android中的自定义适配器获取数据

问题描述 投票:0回答:1

我已经创建了一个产品列表,这些产品在我创建的CustomListAdaptor中正确填充,但是在运行该应用程序时未呈现视图。

在下面的适配器中,prodList被正确地填充为产品实体

import android.app.Activity;
import android.net.Uri;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;

import com.squareup.picasso.Picasso;

import java.util.List;


public class CustomProductListAdaptor extends ArrayAdapter {

    //to reference the Activity
    private final Activity context;

    private final List<Product> productList;


    public CustomProductListAdaptor(Activity context,List<Product> prodList){
        super(context,R.layout.productlist_item);
        this.context=context;
        this.productList = prodList;
    }

    public View getView(int position, View view, ViewGroup parent) {
        LayoutInflater inflater=context.getLayoutInflater();
        View rowView=inflater.inflate(R.layout.productlist_item, null,true);
        Toast.makeText(getContext(),"In getView",Toast.LENGTH_LONG).show();

        //this code gets references to objects in the listview_row.xml file
        TextView nameTextField = (TextView) rowView.findViewById(R.id.product_name);
        TextView priceTextField = (TextView) rowView.findViewById(R.id.product_description);
        ImageView imageView = (ImageView) rowView.findViewById(R.id.productImage);

        //this code sets the values of the objects to values from the list
        try {
            nameTextField.setText(productList.get(position).getName());
            priceTextField.setText(productList.get(position).getPrice()+"/-");
            Uri imageUri = Uri.parse(productList.get(position).getImgUrl());
            Picasso.with(context).load(imageUri).placeholder(R.drawable.selectphoto).into(imageView);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return rowView;
    }


}
android android-studio android-listview custom-lists adaptor
1个回答
0
投票

将项目视图的布局高度设置为wrapcontent

将布局管理器设置为recyclerview

© www.soinside.com 2019 - 2024. All rights reserved.