所以我寫的表單有兩個字段,一個主體和一個標題。如果這些字段不包含數據以防止用戶將其保存到數據庫中,我希望獲得表單以拋出Toast消息。代碼應該做三件事之一。第一個是我正在努力完成的。第二種情況是,如果ID意圖爲空,它將創建一個新條目,並且如果ID意圖包含內容,則它將使用新內容更新數據庫條目。我遇到的問題是當表單字段爲空時,它仍然保存。這似乎完全跳過我的第一次IF聲明,我似乎無法弄清楚爲什麼。我試過對第一個IF語句同時使用null和「」,分別和一起使用。幫幫我?Android - 如何阻止表單保存null到我的數據庫
submitBtn.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
String titleInsert = titleEdit.getText().toString();
String bodyInsert = bodyEdit.getText().toString();
String dateTimeValue = dateTimeTextView.getText().toString();
if ((titleInsert == null || titleInsert == "") || (bodyInsert == null || bodyInsert == "")){
Context context = getApplicationContext();
CharSequence text = "Please make sure the Title and Body are both filled before saving";
int duration = Toast.LENGTH_SHORT;
Toast toast = Toast.makeText(context, text, duration);
toast.show();
}else if(intentRowId == null){
try{
mDb.open();
mDb.createNote(Integer.parseInt(mIntentId), titleInsert, bodyInsert, dateTimeValue);
finish();
} catch (Exception e) {
e.printStackTrace();
}
} else {
try{
mDb.open();
mDb.updateNote(longRowId, titleInsert, bodyInsert);
finish();
} catch (Exception e){
e.printStackTrace();
Context context = getApplicationContext();
CharSequence text = "SQL Exception Thrown: " + e;
int duration = Toast.LENGTH_SHORT;
Toast toast = Toast.makeText(context, text, duration);
toast.show();
}
}
}
});
你肯定titleInsert其實空進入第一if語句是什麼時候?我一直在掙扎,但我的錯誤是在調用者的一個類型轉換錯誤。 – apesa 2011-03-22 16:33:22