我有一个listView的自定义ArrayAdapter,它位于水平scrollView内.水平滚动工作正常,但对于垂直滚动,我不得不做一些黑客攻击.我只是想知道它是否是一个好主意,因为listView已经针对垂直滚动进行了优化.有没有办法滚动没有这个黑客?
黑客主要是为scrollView(父类)捕获touchEvent并将touchEvent传播到ListView.
scrolLView.setOnTouchListener(new OnTouchListener(){
@Override
public boolean onTouch(View arg0, MotionEvent arg1) {
lv.setSmoothScrollbarEnabled(true);
lv.dispatchTouchEvent(arg1);
}
});
Run Code Online (Sandbox Code Playgroud)
这会导致滚动发生并且事情有效.我只是想知道是否还有一些我需要考虑的事情.
谢谢