我有一个添加到购物车按钮,可以将产品添加到购物车和数据库中。如果产品是已安装在购物车,我想显示相同的按钮已经在cart.I尝试使用if else,但它不工作。它不会崩溃VM.But没有影响点击。
我的代码
add2cart.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
String nm=name.getText().toString();
String rate=price.getText().toString();
mydb=Product_Details.this.openOrCreateDatabase("addcart", MODE_PRIVATE, null);
Cursor cur=mydb.rawQuery("select * from add2cart where pnme='"+nm+"'",null);
while (cur.moveToNext())
{
String name=cur.getString(cur.getColumnIndex("pnme"));
if (nm.equals(name))
{
add2cart.setText("Already in Cart");
}
else {
mydb.execSQL("INSERT INTO add2cart (pnme,prate)VALUES('"+nm+"','"+prprice+"')");
Toast.makeText(getApplicationContext(),"add to cart",Toast.LENGTH_SHORT).show();
Intent in=new Intent(Product_Details.this,add2cart.class);
startActivity(in);
} }
}
});
答案 0 :(得分:1)
也许您应该尝试重命名一个“名称”变量。您可以使用this.name指定您指的是哪一个,但我认为没有必要这样做。问题实际上可能是当你执行if(nm.equals(name))时,你指的是全局变量名,而不是你在前一行中设置的名。希望我能帮忙