2014-03-04 39 views
3

我必須要兩個EditTexts(editText1和editText2),我希望用戶先在editText1裏面輸入值,然後在editText2裏面,換另一個字我想讓editText2不可編輯直到用戶輸入editText1中的一些內容。使EditText不可編輯使用if語句

我試過,但沒有奏效:

EditText editText1 ; 
    EditText editText2 ; 

    String Str1 = editText1 .getText().toString(); 

if(Str1.matches("")) 
{ 
    editText2 .setKeyListener(null);  

} 
+0

想想你想要做的editText2.setEnabled(假) – cYrixmorten

+0

不要忘了處理的情況下,當用戶寫一些文字editText1,然後editText2,之後他刪除文本來自editText1。 – skywall

回答

3

這可能符合您的要求。

if(Str1.matches("")) { 
    editText2.setEnabled(false); 

}else{ 
    editText2.setEnabled(true); } 
0

,您可以先辦editText2.setEnabled(假的),然後當用戶鍵入的東西在第一EDITTEXT,你可以做editText.setEnabled(真)。

1

您應該使用setEnabled()方法

if(Str1 == null || Str1.length() == 0) 
{ 
    editText2.setEnabled(false);  
} else 
{ 
    editText2.setEnabled(true);  
} 

你應該把這些代碼到OnKeyListener第一個EditText。這將根據第一個文本的長度啓用和禁用第二個文本。

0

您可以禁用使用.setEnabled(false)方法的任何view元素的功能。

所以,使用

EditText.setEnabled(false);