我創建了多個EditText
,之後我們得到了每個EditText
的值,但是現在我想將該值與給定的字符串進行比較,而無需單擊任何按鈕。如何在不點擊按鈕的情況下執行任何功能只需在edittext中輸入值?
1
A
回答
1
您可能需要使用EditText的addTextChangedListener()
方法並使用TextWatcher
。您可以使用以下方法:
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {}
@Override
public void afterTextChanged(Editable s) {}
0
您可以使用addTextChangeListener事件來編輯文本。您可以在文本更改執行所需的操作
editText.addTextChangedListener(new TextWatcher()
{
@Override
public void afterTextChanged(Editable s)
{
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after)
{
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count)
{
}
});
1
您可以偵聽TextChange
:
editText.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
//do stuff
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
//do stuff
}
@Override
public void afterTextChanged(Editable s) {
//do stuff
}
});
或者監聽按下特定按鍵:
editText.setOnKeyListener(new View.OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
//do stuff
return false;
}
});
0
看看這段代碼
Field1.addTextChangedListener(new TextWatcher() {
public void afterTextChanged(Editable s) {}
public void beforeTextChanged(CharSequence s, int start,
int count, int after) {
}
public void onTextChanged(CharSequence s, int start,
int before, int count) {
...
}
});
2
使用文本監視器,如下所示。
// replace R.id.editText1 with your edittext id
final EditText myEditText = (EditText) findViewById(R.id.editText1);
final int maxTextLength = 8;//length after that you want to compare string
InputFilter[] filterArray = new InputFilter[1];
filterArray[0] = new InputFilter.LengthFilter(maxTextLength);
myEditText.setFilters(filterArray);
myEditText.addTextChangedListener(new TextWatcher(){
@Override
public void afterTextChanged(Editable arg0) {
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence txtWatcherStr, int start, int before, int count){
if(count==maxTextLength){
if(myEditText .getText().toString().equals("Some String")){
// do something
}
}
}
});
相關問題
- 1. 如何在不點擊的情況下顯示透視按鈕?
- 2. 如何在不點擊按鈕的情況下開始操作?
- 3. 如何在不點擊按鈕的情況下$ _POST?
- 4. 如何在不點擊輸入欄的情況下更新輸入值?
- 5. 如何在不點擊表單的情況下立即點擊ToolStrip按鈕?
- 6. 在沒有用戶點擊的情況下執行點擊功能?
- 7. 如何在我的情況下禁用按鈕點擊事件?
- 8. 如何在不按下按鈕的情況下調用某個功能
- 9. 如何在不點擊運行按鈕的情況下啓動GHUnit測試?
- 10. 如何在不按下按鈕的情況下立即執行代碼?
- 11. 如何在用戶按下從Jquery中的文本框輸入時只調用一個按鈕點擊功能?
- 12. 如何在不點擊按鈕的情況下自動下載文件?
- 13. 如何執行按鈕上的每個功能點擊
- 14. 如何在不點擊listview委託的情況下更改按鈕的文本?
- 15. 如何在未點擊的情況下恢復以前的輸入值?
- 16. 如何在不需要點擊按鈕的情況下獲得選項的價值?
- 17. 如何在不點擊按鈕的情況下關閉「navigator.notification.alert」消息
- 18. HtmlUnit,如何在不點擊提交按鈕的情況下發布表單?
- 19. 如何在不按下按鈕的情況下開始活動?
- 20. 如何點擊在這種情況下
- 21. onclick函數在沒有任何點擊的情況下執行javascript
- 22. 如何執行相同的功能在文本框中輸入一個按鈕點擊
- 23. 如何在不必按ENTER的情況下輸入'y'?
- 24. 如何在不按下每次輸入的情況下獲得輸入?
- 25. 的Javascript功能,不以任何情況下返回值
- 26. 圖片按鈕點擊進入Servlet沒有輸入任何值
- 27. 如何在不重新加載頁面的情況下使用php頁面上的按鈕執行功能?
- 28. 按鈕需要按下兩次才能在Java中執行任何操作
- 29. 插入很多值單選按鈕,只需點擊一下
- 30. Jquery驗證輸入字段onkeyup,然後執行功能,如果點擊按鈕
[TextChangedListener(http://developer.android.com/reference/android/widget/TextView.html#addTextChangedListener(android.text.TextWatcher))是你正在尋找...這裏是什麼[簡單示例](http://www.mysamplecode.com/2012/06/android-edittext-text-change-listener.html) – CRUSADER