我正在嘗試爲我的應用創建一個自定義搜索欄,它工作正常,但我需要包含一個if/else語句讓我的用戶知道用戶他搜索不存在。我嘗試實現一個if/else語句,但是當我嘗試搜索數據庫中的用戶時,它告訴我我的其他語句「用戶名未找到」,當我知道我正在輸入正確的用戶名時。搜索欄「if」語句一直顯示「else」結果
從我提供的代碼我想知道我做錯了什麼?
search.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String Username = sbar.getText().toString();
String foundplayer = db.getUsername();
if (Username.equals(foundplayer)) {
ResultFrame.setVisibility(View.VISIBLE);
ResultText.setText(foundplayer);
Toast.makeText(getApplicationContext(), "Player Found", Toast.LENGTH_LONG).show();
} else {
Toast.makeText(getApplicationContext(), "Username Not Found", Toast.LENGTH_LONG).show();
}
}
});
public String getUsername() {
String[] userName = new String[] { "USERNAME" };
Cursor c = db.query("NFDB", null, null, null, null, null, null, null);
String result = "";
int iName = c.getColumnIndex("USERNAME");
for (c.moveToFirst(); !c.isAfterLast(); c.moveToNext()) {
result = c.getString(iName);
}
return result;
}
我幾乎可以肯定''foundplayer'是''「',這就是爲什麼'if'條件不被滿足的原因。你調試了嗎?調試器是你的朋友。 – Maroun
請改爲使用Username.equalsIgnoreCase(foundplayer.trim())。 – dannyroa
@Cranosaur你確定你正在獲取用戶名嗎? – Pragnani