今天继续做的一个通讯录里面修改一个功能,但是不知道怎么做,求技术大牛指教!
不废话,先上代码一个DBHelper:
public long upData(User user, long id) {
openDatabase();
                //删除原联系人资料
db.delete("user", "_id"+"="+id, null);
//将新的资料再写入dataBase
ContentValues value = new ContentValues();
value.put("name", user.name);
value.put("telephone", user.telephone);
value.put("phone", user.phone);
value.put("address", user.address);
value.put("position", user.position);
value.put("corporation", user.corporation);
value.put("email", user.email);
value.put("other_contact", user.other_contact);
value.put("zipCode", user.zipCode);
value.put("res", user.res);
// value.put("imageid", user.imageId); return db.insert("user", null, value);
}下面是DetailActivity中调用以上方法的代码:
btn_modify.setOnClickListener(new OnClickListener() { String usedName=(String) map.get("name");
//
public void onClick(View v) { if (flag) {
flag = false;
btn_modify.setText("修改");
btn_delete.setText("删除"); String name = et_name.getText().toString();
if (name.equals("")) {
Toast.makeText(DetailActivity.this, "姓名不能为空",
Toast.LENGTH_LONG).show();
return;
} else {
setEditTextDisable();
}
String telephone = et_telephone.getText().toString();
String phone = et_phone.getText().toString();
String address = et_address.getText().toString();
String email = et_email.getText().toString();
String corporation = et_corporation.getText().toString();
String zipCode = et_zipCode.getText().toString();
String position = et_position.getText().toString();
String other_contact = et_other_contact.getText()
.toString();
String res = et_res.getText().toString(); int imageId = images[imagePosition]; User user = new User();
user.address = address;
user.corporation = corporation;
user.email = email;
user.other_contact = other_contact;
user.phone = phone;
user.telephone = telephone;
user.zipCode = zipCode;
user.position = position;
user.res = res;
user.imageId = imageId;
user.name = name; // 将修改后的user对象保存在DataBase里面
int getid = DBHelper.getInstance(DetailActivity.this)
.getId(user);
long success = DBHelper.getInstance(DetailActivity.this)
.upData(user, getid);
if (success != -1) {
Toast.makeText(DetailActivity.this, "修改成功!",
Toast.LENGTH_LONG).show();
/**
 * Intent intent = new Intent();
 * intent.setClass(Activity01.this, ListActivity.class);
 * startActivity(intent);
 */
setResult(1);
finish();
} else {
Toast.makeText(DetailActivity.this, "添加失败,请重新操作!",
Toast.LENGTH_LONG).show();
setResult(2);
finish();
}
} else {
flag = true;
btn_modify.setText("保存");
btn_delete.setText("取消");
activateText();
} }
});
}
大牛们,我的毕设啊,求帮忙,急死了 T_T

解决方案 »

  1.   

    木有人!!!木有人!!!内牛满面!!!
    是不是我说的不够详细?
    说实话,我不知道怎么把改动过后的联系人信息更新至数据库,所以就只能把旧的联系人信息删除,再重新把改动后的信息重新insert进去,方法比较笨,有木有懂点的人教教我啊。
    我可怜的毕设啊,愿意的大牛也可以加我QQ:13616029715,求指路,求指导,各种求