【发布时间】:2011-09-19 12:22:07
【问题描述】:
一定很简单……
void CheckQty(long rowId, String manufacturer, String expires, String value, String category, String image, String valueother, Integer qty) {
// TODO Auto-generated method stub
if(qty<=1){
deleteNote(rowId);
}else{
qty = Math.abs(qty)-1;
updateNote(rowId, manufacturer, expires, value, category, image, valueother, qty);
}
}
更新说明:
public boolean updateNote(long rowId, String manufacturer, String expires, String value, String category, String image, String valueother, Integer qty) {
ContentValues args = new ContentValues();
args.put(KEY_MANUFACTURER, manufacturer);
args.put(KEY_EXPIRES, expires);
args.put(KEY_VALUE, value);
args.put(KEY_VALUE_OTHER, valueother);
args.put(KEY_CATEGORY, category);
args.put(KEY_QTY, qty);
args.put(KEY_IMAGE, image);
//args.put(KEY_BODY, body);
return mDb.update(DATABASE_TABLE, args, KEY_ROWID + "=" + rowId, null) > 0;
}
从数据库中取出初始值并传递给这个函数,它可以是用户输入的任何数字,但数字是多少似乎无关紧要,结果总是6
这只会将“数量”更改为 6
有什么帮助吗?
【问题讨论】:
-
初始值是多少?另外,你的 updateNote(...) 函数里有什么?
-
是的,执行qty = Math.abs(qty)-1;前后的qty的值是多少代码行?
-
这不是一个非常普遍的问题。尝试花一些时间进行调试,而不是询问每一个出错的地方来为你解决 - 你会通过这种方式学到更多的东西;)