第180页
TextView tvtitle,textView; //创建两个TextView对象
EditText txtMoney,txtTime,txtHA,txtMark; //创建4个EditText对象
Spinner spType; //创建Spinner对象
Button btnEdit,btnDel; //创建两个Button对象
String[] strInfos; //定义字符串数组
String strid,strType; //定义两个字符串变量,分别用来记录信息编号和管理类型
private int mYear; //年
private int mMonth; //月
private int mDay; //日
OutaccountDAO outaccountDAO=new OutaccountDAO(InfoManage.this); //创建OutaccountDAO对象
InaccountDAO inaccountDAO=new InaccountDAO(InfoManage.this); //创建InaccountDAO对象
说明: 修改、删除收入信息和支出信息的功能都是在InfoManage.java文件中实现的,所以在15.10.10节和15.10.11节中讲解修改、删除收入信息时,可能会涉及支出信息的修改与删除。
在onCreate()覆写方法中,初始化创建的EditText、Spinner和Button对象,代码如下:
tvtitle=(TextView) findViewById(R.id.inouttitle); //获取标题标签对象
textView=(TextView) findViewById(R.id.tvInOut); //获取“地点/付款方”标签对象
txtMoney=(EditText) findViewById(R.id.txtInOutMoney); //获取“金额”文本框
txtTime=(EditText) findViewById(R.id.txtInOutTime); //获取“时间”文本框
spType=(Spinner) findViewById(R.id.spInOutType); //获取“类别”下拉列表
txtHA=(EditText) findViewById(R.id.txtInOut); //获取“地点/付款方”文本框
txtMark=(EditText) findViewById(R.id.txtInOutMark); //获取“备注”文本框
btnEdit=(Button) findViewById(R.id.btnInOutEdit); //获取“修改”按钮
btnDel=(Button) findViewById(R.id.btnInOutDelete); //获取“删除”按钮
在onCreate()覆写方法中初始化各组件对象后,使用字符串记录传入的id和类型,并根据类型判断显示收入信息还是支出信息,代码如下:
Intent intent=getIntent(); //创建Intent对象
Bundle bundle=intent.getExtras(); //获取传入的数据,并使用Bundle记录
strInfos=bundle.getStringArray(Showinfo.FLAG); //获取Bundle中记录的信息
strid=strInfos[0]; //记录id
strType=strInfos[1]; //记录类型
if(strType.equals("btnoutinfo")) //如果类型是btnoutinfo
{
tvtitle.setText("支出管理"); //设置标题为“支出管理”
textView.setText("地 点:"); //设置“地点/付款方”标签文本为“地 点:”
//根据编号查找支出信息,并存储到Tb_outaccount对象中
Tb_outaccount tb_outaccount=outaccountDAO.find(Integer.parseInt(strid));
txtMoney.setText(String.valueOf(tb_outaccount.getMoney())); //显示金额
txtTime.setText(tb_outaccount.getTime()); //显示时间
spType.setPrompt(tb_outaccount.getType()); //显示类别
txtHA.setText(tb_outaccount.getAddress()); //显示地点
txtMark.setText(tb_outaccount.getMark()); //显示备注
}
else if(strType.equals("btnininfo")) //如果类型是btnininfo
{
tvtitle.setText("收入管理"); //设置标题为“收入管理”
textView.setText("付款方:"); //设置“地点/付款方”标签文本为“付款方:”
//根据编号查找收入信息,并存储到Tb_outaccount对象中
Tb_inaccount tb_inaccount= inaccountDAO.find(Integer.parseInt(strid));
txtMoney.setText(String.valueOf(tb_inaccount.getMoney())); //显示金额
txtTime.setText(tb_inaccount.getTime()); //显示时间
spType.setPrompt(tb_inaccount.getType()); //显示类别
txtHA.setText(tb_inaccount.getHandler()); //显示付款方
txtMark.setText(tb_inaccount.getMark()); //显示备注
}
15.10.10 修改收入信息
当修改完显示的收入或者支出信息后,单击“修改”按钮,如果显示的是支出信息,则调用OutaccountDAO对象的update()方法修改支出信息;如果显示的是收入信息,则调用InaccountDAO对象的update()方法修改收入信息。代码如下:
btnEdit.setOnClickListener(new OnClickListener() { //为“修改”按钮设置监听事件
@Override
public void onClick(View arg0) {
//TODO Auto-generated method stub
if(strType.equals("btnoutinfo")) //判断类型如果是btnoutinfo