Custom ListView adapter. TextChangedListener calls for wrong EditText

前端 未结 3 1322
清歌不尽
清歌不尽 2021-01-23 13:20

I have the list of travelers with custom adapter what consist two EditText - edtFirstName and edtLastName. I want when user enters text save changes to List, and when next butto

3条回答
  •  难免孤独
    2021-01-23 14:04

    Create one more EditText in the screen that is invisible with name invivisbleEt. And do the following thing in the addTextChangedListener

    firstNameView.addTextChangedListener(new TextWatcher() {
    
        @Override
        public void afterTextChanged(Editable editable) {
            if(!firstNameView.isFocused())
                currentItem.setFirstName(editable.toString());
        }
    
    });
    

    Also add this code in the onCreate method for ListView object.

    lv.setOnScrollListener(new AbsListView.OnScrollListener() {
    
        //public boolean scrolling;
    
        @Override
        public void onScrollStateChanged(AbsListView absListView, int scrollState) {
            invivisbleEt.requestFocus();
        }
    
        @Override
        public void onScroll(AbsListView absListView, int i, int i1, int i2) {
        }
    });
    

提交回复
热议问题