ScrollView中包含EditText,致使EditText沒法上下滾動的解決辦法

ScrollView中包含EditText,致使EditText沒法上下滾動的解決辦法:java

mEt_content.setOnTouchListener(this); // 解決scrollView中嵌套EditText致使不能上下滑動的問題  
  
@Override  
public boolean onTouch(View v, MotionEvent event) {  
    switch (v.getId()) {  
    case R.id.et_content:  
    case R.id.et_title:  
        // 解決scrollView中嵌套EditText致使不能上下滑動的問題  
        v.getParent().requestDisallowInterceptTouchEvent(true);  
        switch (event.getAction() & MotionEvent.ACTION_MASK) {  
        case MotionEvent.ACTION_UP:  
            v.getParent().requestDisallowInterceptTouchEvent(false);  
            break;  
        }  
    }  
    return false;  
}

實際就是在手指按下的時候,若是觸發的EditText,則請求父控件不要攔截;在手指擡起的時候,容許父控件進行攔截(恢復系統默認的事件分發機制)。ide


不過還遇到一個問題,就是EditText中輸入的文字過多的時候,點擊EditText,當EditText得到焦點後,ScrollView會莫名的跳動,該bug沒找到緣由...this

相關文章
相關標籤/搜索