2017-04-06 50 views
0

我得到密碼編輯文本值,但我沒有得到我想要的。獲取密碼編輯文本值時的Android錯誤

我的代碼中所獲得的價值:

String username = "", password = ""; 
username = ((EditText)findViewById(R.id.username_pet)).toString(); 
password = ((EditText)findViewById(R.id.password_pet)).toString(); 

,但是當我把結果吐司我沒有得到它的權利。我得到的是this 錯誤。

任何幫助將不勝感激。謝謝!

回答

0
username = ((EditText)findViewById(R.id.username_pet)).getText().toString(); 
password = ((EditText)findViewById(R.id.password_pet)).getText().toString(); 
+0

謝謝你解決我的問題。 –

+0

很高興幫助。標記爲已解決。 –

1

你的代碼會返回你的EditText的ID,但你想要的是文本。 試試這個

通過替換此:

username = ((EditText)findViewById(R.id.username_pet)).toString(); 
password = ((EditText)findViewById(R.id.password_pet)).toString(); 

username = ((EditText)findViewById(R.id.username_pet)).getText(); 
password = ((EditText)findViewById(R.id.password_pet)).getText(); 

希望這有助於

+0

並且必須添加.toString()它解決了我的問題。謝謝 –

+0

是的歡迎只是更新it.Please標記爲正確的,如果它可以幫助和訪問這個進一步的細節。 http://stackoverflow.com/questions/5028466/reading-text-of-an-edittext-in-android –

+0

嘿,我可以屁股1更多我不能發佈另一個問題,所以我得到的用戶名和密碼和這個 public void login(String username,String password){ if(username ==「user123」&& password ==「pass123」){ toastShowMsg(「Logged in」); } else { toastShowMsg(「無效的用戶名或密碼」); } } 而且,即使我在「if」中得到了正確的條件,它似乎總是在「其他」中結束。我不知道什麼是錯的。請幫忙謝謝 –

0

發生這種情況,因爲你正試圖之前轉換爲字符串得到輸入字段的文本。該應用程序完全按照您要求的方式進行:獲取EditText視圖並將視圖轉換爲字符串,而不是視圖中的文本。如果這是有道理的。

嘗試

EditText userName = (EditText) findViewById(R.id.username_pet); 
String userNameFromEditText = (String) username.getText().toString(); 

然後舉杯userNameFromEditText的價值。

+0

哦,是的,我明白了。非常感謝!解決我的問題。 –