在android中定制listview中的价格和数量乘以

时间:2012-05-01 09:13:34

标签: android android-listview

我正在获取一个数组,该数组在自定义列表视图中显示itemimage,itemname,price,qty。现在我再添加一个字段,总计,通过乘以价格和数量来计算。

我正在使用此代码:

public class CustomAdapter extends BaseAdapter
  {
    integer[] a;
public static ArrayList<String> arr1=new ArrayList<String>();
public static ArrayList<String> itemprice=new ArrayList<String>();
public static ArrayList<Bitmap> itemimage=new ArrayList<Bitmap>();
public Context Context;
private LayoutInflater inflater;
String total;
    HashMap<String, String> map = new HashMap<String, String>();
    public CustomAdapter(Context context, ArrayList<String> arr,ArrayList<String> price,ArrayList<Bitmap> image) 
    {
        Context=context;
        inflater=LayoutInflater.from(context);
        arr1=arr;
        itemprice=price;
        itemimage=image;
        System.out.println(itemprice);
        System.out.println("arr: " + arr.size());

      for(int i=0;i<price.size();i++)
      {

          String amonut=price.get(i);
          int x=Integer.parseInt(amonut);

      }

    }
    public int getCount() 
    {
        // TODO Auto-generated method stub
        return arr1.size();

    }

    public Object getItem(int position) 
    {
        // TODO Auto-generated method stub
        return arr1.get(position);
    }

    public long getItemId(int position) 
    {
        // TODO Auto-generated method stub
        return position;
    }

    public View getView(int position, View convertView, ViewGroup parent) 
        {
        System.out.println(arr1.get(position));

          final  ViewHolder holder;

            if (convertView == null) 
            {
                convertView = inflater.inflate(R.layout.selecteditemlistview, null);
                holder = new ViewHolder();

                holder.textViewSelectedText = (TextView)convertView.findViewById(R.id.selectedtext);
                holder.price=(TextView)convertView.findViewById(R.id.selectitemprice);
                holder.image=(ImageView)convertView.findViewById(R.id.selectitemimagge);
                holder.qty=(EditText)convertView.findViewById(R.id.selectqty);
                holder.total=(TextView)convertView.findViewById(R.id.totalamount);
                convertView.setTag(holder);
            }
            else 
            {
                holder = (ViewHolder) convertView.getTag();
            }
            String amount=holder.qty.getText().toString();

            holder.textViewSelectedText.setText(arr1.get(position));
            holder.price.setText(itemprice.get(position));
            holder.image.setImageBitmap(itemimage.get(position));

            return convertView;     
        }

        class ViewHolder
        {
            TextView textViewSelectedText = null;
            TextView price=null;
            ImageView image=null;
            EditText qty=null;
            TextView total=null;
        }      
 }

我想将int x和String amount相乘,并将结果作为文本分配给total。

2 个答案:

答案 0 :(得分:1)

ans = x * Integer.parseInt(amount); or

ans = x * Double.parseDouble(amount);

total = String.valueOf(ans); 

答案 1 :(得分:0)

根据您的要求更改变量类型: -

    private float getTotal(String quantity, String price )
    {
    float total = 0f;

    try{
    float quant = Float.parseFloat(quantity);
    float unitCost= Float.parseFloat(price);

    total = unitCost*quant;


    }catch (Exception e) {

    }

    return total;
    }