2011-05-12 159 views
2

如果它是空的,我需要更改背景顏色EditText。 下面是我的代碼,但似乎沒有工作。如何更改editText的背景顏色?

public void onClick(View v) { 
    // TODO Auto-generated method stub    
    Change();  
} 

public void Change() { 
    if(("").equals(name)) { 
     name.setBackgroundColor(Color.RED); 
     return; 
    } 
} 

回答

5

最簡單的方法是檢查長度:

if (name.length() == 0) { 
    name.setBackgroundColor(Color.RED); 
} 
+0

我更喜歡這個。 – st0le 2011-05-12 04:07:26

+0

謝謝,它的工作原理。 – artist 2011-05-13 03:23:19

+0

@artist很高興聽到它。請標記接受您選擇的答案(左邊的複選框大綱)。謝謝! – 2011-05-13 15:24:08

5

假設 '名' 是的EditText有問題,你的if語句應該閱讀這樣的事情:一個String和一個EditText之間

if(("").equals(name.getText().toString())) 

執行的Object.Equals(對象)(至少目前!)將不會返回true。

+1

我認爲這是正確的答案。 :) – Hades 2011-05-12 04:36:40

+0

我想表明錯誤發生在哪裏。謝謝! – 2011-05-12 04:37:38

+1

我應該提到你的解決方案可以正常工作,並且能夠更好地顯示錯誤的位置,而我想指出檢查EditText是否爲空的最佳方法。顯然他們都是正確的答案。 – 2011-05-13 15:22:48