-3
我在这里打了一堵巨大的墙。我得到了这个代码检查数据库结果:Android - 如果然后不工作..?
chosenSlotDAO.open();
Log.d("id", chosenSlotDAO.getId());
Log.d("isParked", chosenSlotDAO.getIsParked());
Log.d("parkedRow", chosenSlotDAO.getParkedRow());
Log.d("selectedSlot", chosenSlotDAO.getSelectedSlot());
String idStatus = chosenSlotDAO.getId();
String isParkedStatus = chosenSlotDAO.getIsParked();
String parkedRowStatus = chosenSlotDAO.getParkedRow();
String selectedSlotStatus = chosenSlotDAO.getSelectedSlot();
final String outputA = this.getOutput(this, slotA);
if(idStatus == id && isParkedStatus == isParked && parkedRowStatus != parkedA && selectedSlotStatus != slotA)
{
arriveTView.setText(alreadyParked + chosenSlotDAO.getParkedRow());
}
else if(idStatus == id && isParkedStatus == isNotParked && parkedRowStatus != parkedA && selectedSlotStatus != slotA)
{
Toast.makeText(getApplicationContext(),
wrongParkingRow,
Toast.LENGTH_LONG).show();
chosenSlotDAO.updateSlot(id, slotA, parkedA, isParked);
}
else if(idStatus == id && isParkedStatus == isParked && parkedRowStatus == parkedA && selectedSlotStatus == slotA)
{
chosenSlotDAO.updateSlot(id, slotA, setEmpty, isNotParked);
dbUpdateAdd.execute(slotA);
Intent myIntent = new Intent(ParkAArrive.this, ParkLeaving.class);
ParkAArrive.this.startActivity(myIntent);
}
else if(outputA.isEmpty())
{
arriveTView.setText(isFull);
}
else
{
Toast.makeText(getApplicationContext(),
nowParked,
Toast.LENGTH_LONG).show();
chosenSlotDAO.updateSlot(id, slotA, parkedA, isParked);
arriveTView.setText(chosenSlotDAO.getSelectedSlot());
dbUpdate.execute(slotA);
}
该类是通过点击NFC标签启动的。
logcat的回报:
06-15 04:35:10.818: D/id(12294): 1
06-15 04:35:10.818: D/isParked(12294): 1
06-15 04:35:10.819: D/parkedRow(12294): ParkedA
06-15 04:35:10.819: D/selectedSlot(12294): SlotA
06-15 04:35:10.829: D/link(12294): http://parkit.byethost9.com/db_show_slot.php?slot_name=SlotA
06-15 04:35:11.681: D/line(12294): 14
它清楚地表明该用户被停,parkedRow是ParkedA和SlotA是SlotA。但if
不起作用。
但是,当我再次开始活动,没有什么不同之处
else if(outputA.isEmpty())
{
arriveTView.setText(isFull);
}
else
{
Toast.makeText(getApplicationContext(),
nowParked,
Toast.LENGTH_LONG).show();
chosenSlotDAO.updateSlot(id, slotA, parkedA, isParked);
arriveTView.setText(chosenSlotDAO.getSelectedSlot());
dbUpdate.execute(slotA);
}
作品。
在代码中我做错了什么?告诉我,如果我留下任何所需的信息untold ..
更新: 似乎我需要更改我的代码,以便它可以比较String
,是的这是我面临的问题。
您应该重新表达您的问题。 – AnixPasBesoin