商品展示

来源:互联网 发布:compareto方法比较数组 编辑:程序博客网 时间:2024/05/17 06:51

创建如图所示


1.在activity_show 中编写程序如下

<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:id="@+id/activity_show"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:paddingBottom="@dimen/activity_vertical_margin"    android:paddingLeft="@dimen/activity_horizontal_margin"    android:paddingRight="@dimen/activity_horizontal_margin"    android:paddingTop="@dimen/activity_vertical_margin"    tools:context="cn.edu.bzu.myapplication.MainActivity">    <LinearLayout        android:id="@+id/addLL"        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:orientation="horizontal"        >        <EditText            android:id="@+id/nameET"            android:layout_width="0dp"            android:layout_height="wrap_content"            android:layout_weight="1"            android:hint="商品名称"            android:inputType="textPersonName"            />        <EditText            android:id="@+id/blanceET"            android:layout_width="0dp"            android:layout_height="wrap_content"            android:layout_weight="1"            android:hint="金额"            android:inputType="number"            />        <ImageView            android:onClick="add"            android:id="@+id/addTV"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:src="@android:drawable/ic_input_add"            />    </LinearLayout>    <ListView        android:id="@+id/accountLV"        android:layout_width="match_parent"        android:layout_height="match_parent"        android:layout_below="@+id/addLL"        /></RelativeLayout
2.在item中编写程序如下:
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:orientation="horizontal"    android:padding="10dp"    >    <TextView        android:id="@+id/idTV"        android:layout_width="0dp"        android:layout_height="wrap_content"        android:layout_weight="1"        android:text="13"        android:textColor="#000000"        android:textSize="20sp"        />    <TextView        android:id="@+id/nameTV"        android:layout_width="0dp"        android:layout_height="wrap_content"        android:layout_weight="2"        android:singleLine="true"        android:text="PQ"        android:textColor="#000000"        android:textSize="20sp"        />    <TextView        android:id="@+id/balanceTV"        android:layout_width="0dp"        android:layout_height="wrap_content"        android:layout_weight="2"        android:singleLine="true"        android:textColor="#000000"        android:textSize="20sp"        android:text="12345"        />    <LinearLayout        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:orientation="vertical"        >        <ImageView            android:id="@+id/upIV"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:layout_marginBottom="2dp"            android:src="@android:drawable/arrow_up_float"           /> >        <ImageView            android:id="@+id/downIV"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:src="@android:drawable/arrow_down_float"            />    </LinearLayout>    <ImageView        android:id="@+id/deleteIV"        android:layout_width="25dp"        android:layout_height="25dp"        android:layout_marginBottom="2dp"        android:src="@android:drawable/ic_menu_delete"        /></LinearLayout>

3.在Account中编写代码如下:
package cn.edu.bzu.myapplication.bean;/** * Created by Administrator on 2017/4/27. */public class Account {    private Long id;    private String name;    private Integer balance;    public Long getId(){        return id;    }    public void setId(long id){        this.id=id;    }    public String getName(){        return name;    }    public void setName(String name){        this.name=name;    }    public Integer getBalance(){        return balance;    }    public void setBalance(Integer balance){        this.balance=balance;    }    public Account(long id, String name, Integer balance){        super();        this.name=name;        this.balance=balance;    }    public Account(String name, int i){        super();    }    public String toString(){        return "[序号:"+id+",商品名称:"+name+",余额:"+balance+"]";    }}
5.在MainActivity中编写如下:
package cn.edu.bzu.myapplication;import com.example.bz0209.myapplication.bean.Account;import android.content.DialogInterface;import android.support.v7.app.AlertDialog;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.view.ViewGroup;import android.widget.AdapterView;import android.widget.BaseAdapter;import android.widget.EditText;import android.widget.ImageView;import android.widget.ListView;import android.widget.TextView;import android.widget.Toast;import com.example.bz0209.myapplication.dao.AccountDao;import java.util.List;public class MainActivity extends AppCompatActivity {    private List<Account> list;    private AccountDao dao;    private EditText nameET;    private EditText balanceET;    private MyAdapter myAdapter;    private ListView accountLV;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_show);        initView();        dao=new AccountDao(this);        list=dao.queryAll();        myAdapter=new MyAdapter();        accountLV.setAdapter(myAdapter);    }    private void initView() {        accountLV = (ListView) findViewById(R.id.accountLV);        nameET = (EditText) findViewById(R.id.blanceET);        accountLV.setOnItemClickListener(new MyOnItemClickListener());    }    public void add(View v) {        String name=nameET.getText().toString().trim();        String balance=balanceET.getText().toString().trim();        Account a=new Account(name, balance.equals("")?0:Integer.parseInt(balance));        dao.insert(a);        list.add(a);        myAdapter.notifyDataSetChanged();        accountLV.setSelection(accountLV.getCount()-1);        nameET.setText("");        balanceET.setText("");    }    private class MyAdapter extends BaseAdapter {        public int getCount() {            return list.size();        }        public Object getItem(int position) {            return list.get(position);        }        public long getItemId(int position) {            return position;        }        public View getView(int position, View convertView, ViewGroup parent) {            View item = convertView != null ? convertView : View.inflate(                    getApplicationContext(), R.layout.item, null);            TextView idTV = (TextView) item.findViewById(R.id.idTV);            TextView nameTV = (TextView) item.findViewById(R.id.nameTV);            TextView balanceTV = (TextView) item.findViewById(R.id.balanceTV);            final Account a = list.get(position);            idTV.setText(a.getId() + "");            nameTV.setText(a.getName());            balanceTV.setText(a.getBalance() + "");            ImageView upIV = (ImageView) item.findViewById(R.id.upIV);            ImageView downIV = (ImageView) item.findViewById(R.id.downIV);            ImageView deleteIV = (ImageView) item.findViewById(R.id.deleteIV);            upIV.setOnClickListener(new View.OnClickListener() {                @Override                public void onClick(View v) {                    a.setBalance(a.getBalance() - 1);                    notifyDataSetChanged();                    dao.updata(a);                }            });            downIV.setOnClickListener(new View.OnClickListener() {                @Override                public void onClick(View v) {                    a.setBalance(a.getBalance() - 1);                    notifyDataSetChanged();                    dao.updata(a);                }            });            deleteIV.setOnClickListener(new View.OnClickListener() {                @Override                public void onClick(View v) {                    DialogInterface.OnClickListener listener=new DialogInterface.OnClickListener(){                        public void onClick (DialogInterface dialog,int which){                            list.remove(a);                            dao.delete(a.getId());notifyDataSetChanged();                        }                    };                    AlertDialog.Builder builder=new AlertDialog.Builder(MainActivity.this);                    builder.setTitle("确定要删除吗?");                    builder.setPositiveButton("确定",listener);                    builder.setNegativeButton("取消",null);                    builder.show();                }            });            return item;        }    }    private class MyOnItemClickListener implements AdapterView.OnItemClickListener{        public void onItemClick(AdapterView<?>parent,View view,int position,long id){            Account a=(Account) parent.getItemAtPosition(position);            Toast.makeText(getApplicationContext(),a.toString(),Toast.LENGTH_SHORT).show();        }    }}



 

0 0