列表,累加价钱

activity_zong.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"

    android:orientation="vertical" >

    <ListView
        android:id="@+id/l_lv"
        android:layout_width="match_parent"
        android:layout_height="400dp"
        android:layout_weight="1"

        />
    <LinearLayout 
        android:id="@+id/l_ll1"
        android:layout_below="@id/l_lv"
        android:layout_alignParentRight="true"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"

        android:orientation="horizontal"
        >
        <CheckBox 
            android:id="@+id/c_check1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/quanxuan"
            />
        <TextView 
            android:id="@+id/t_heji"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/heji"
            android:textColor="#f00"
            />
        <TextView 
            android:id="@+id/t_heji1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="0"
            />
        <Button 
            android:id="@+id/b_jieshu"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="#f00"
            android:textSize="12sp"
            android:text="@string/jishuan"
            />
    </LinearLayout>

</LinearLayout>

ZongActivity.class

public class ZongActivity extends Activity {

    private ListView lv;
    private Shop s;
    public TextView pric;
    private BaseAdapter adapter;
    int total_price=0;
// public TextView heji1;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_zong);
        if(!AList.list.isEmpty()){
            /*Intent intent=getIntent(); s = (Shop) intent.getSerializableExtra("shop");*/
            lv = (ListView) findViewById(R.id.l_lv);
// heji1 = (TextView) findViewById(R.id.t_heji1);
            pric = (TextView) findViewById(R.id.t_heji1);
            CheckBox check=(CheckBox) findViewById(R.id.c_check1);
            Button jiesuan=(Button) findViewById(R.id.b_jieshu);
// AList.list.add(s);
            adapter = new mbase1(this, AList.list);
            lv.setAdapter(adapter);
            check.setOnCheckedChangeListener(new OnCheckedChangeListener() {

                @Override
                public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
                    // TODO Auto-generated method stub
                    if(isChecked){
                        for(int i=0;i<AList.list.size();i++){
                            AList.list.get(i).setStata(true);
                            adapter.notifyDataSetChanged();
                            total_price=total_price+Integer.parseInt(AList.list.get(i).getPrice());
                            pric.setText(total_price+"");
                        }
                    }else{
                        for(int i=0;i<AList.list.size();i++){
                            AList.list.get(i).setStata(false);
                            adapter.notifyDataSetChanged();
                            total_price=0;
                            pric.setText("0");
                        }
                    }
                }
            });
            jiesuan.setOnClickListener(new OnClickListener() {

                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                    if("".equals(pric.getText().toString())||pric.getText().toString()==null){
                        Toast.makeText(ZongActivity.this, "请勾选", Toast.LENGTH_LONG).show();
                    }else{
                        Toast.makeText(ZongActivity.this, "成功结算", Toast.LENGTH_LONG).show();

                    }
                }
            });
        }
    }
}

mbase1.class

public class mbase1 extends BaseAdapter {

    private Context context;
    private ArrayList<Shop> list;
    private View view;
    private ViewHolder vh;


    public mbase1(Context context, ArrayList<Shop> list) {
        super();
        this.context = context;
        this.list = list;
    }

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

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

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

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        // TODO Auto-generated method stub
        if(convertView==null){
            view = View.inflate(context, R.layout.item1, null);
            vh = new ViewHolder();
            vh.iv=(ImageView) view.findViewById(R.id.i_i1);
            vh.text=(TextView) view.findViewById(R.id.t_text);
            vh.r1=(CheckBox) view.findViewById(R.id.r_r1);;
            vh.price=(TextView) view.findViewById(R.id.t_price);
            view.setTag(vh);
        }else{
            view=convertView;
            vh=(ViewHolder) view.getTag();
        }
        vh.iv.setImageResource(list.get(position).getImageId());
        vh.text.setText(list.get(position).getTitle());
        vh.r1.setChecked(list.get(position).getStata());
        vh.r1.setTag(position);
        vh.price.setText(list.get(position).getPrice());
        vh.r1.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                CheckBox r1=(CheckBox) v;
                ZongActivity za=(ZongActivity) context;
                int  sum=Integer.parseInt(za.pric.getText().toString());
                int p= (Integer) vh.r1.getTag() ;
                int pr=Integer.parseInt(vh.price.getText().toString());
                if(r1.isChecked()){
                    sum=sum+pr;
                    list.get(p).setStata(true);
                    System.out.println(sum);
                }else{
                    sum=sum-pr;
                    list.get(p).setStata(false);
                }
                za.pric.setText(""+sum);
// mbase1.this.notifyDataSetChanged();
            }
        });
        return view;
    }
    public class ViewHolder{
        private TextView text;
        private TextView price;
        private ImageView iv;
        private CheckBox r1;
    }
}

你可能感兴趣的:(列表,累加价钱)