我想從我的strings.xml文件中的事件處理程序中獲取一個字符串,雖然我得到「沒有這樣的靜態字段」。Context.getString導致「沒有這樣的靜態字段」
這裏是我的代碼:
mSearchEditText.setOnFocusChangeListener(new View.OnFocusChangeListener() {
@Override
public void onFocusChange(View view, boolean hasFocus) {
Context context = view.getContext();
if (hasFocus && mSearchEditText.getText().toString().trim() == context.getString(R.string.searchbar_address_label)) {
mSearchEditText.setText("");
}
else if (!hasFocus && mSearchEditText.getText().toString().trim().isEmpty()) {
mSearchEditText.setText(context.getString(R.string.searchbar_address_label));
}
}
});
什麼是錯的代碼?
感謝
UPDATE:此代碼是爲了展示裏面的EditText暗示。 R.string似乎在偵聽器函數內不可用。所以,我認爲我的問題是「是否有一種原生的方式在EditText中顯示提示,而不是編寫自己的代碼?」
我認爲錯誤不在getString方法中,因爲如果我檢查R.string.search_address_label的值,錯誤也會發生。 –
您是否正在嘗試在用戶輸入edittext時刪除文本? – skygeek
這是我的意圖與此代碼。我不知道edittext有一個提示屬性,它以這種方式工作。 –