我正在尝试监听事件HorizontalScrollView
已滚动。尝试过这个,但它不打印任何内容。
HorizontalScrollView headerScrollView = new HorizontalScrollView(this);
headerScrollView.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
Log.i("hv1",event.toString());
Log.i("hv1","HELLO");
return false;
}
});
实际问题是,我想滚动两个HorizontalScrollView
一次..ie;当至少其中一个滚动时,它们都需要同时滚动。
有什么解决方法吗?
我使用了下面的答案,然后尝试实现这个,但我不确定我需要如何使用类中的方法。
TestHorizontalScrollView headerScrollView = (TestHorizontalScrollView) findViewById(R.id.headerHv);
这是我需要指向布局文件中的 hsv 元素的方式吗?
您可能想尝试创建自己的自定义类来扩展 HorizontalScrollView 并重写 onScrollChanged() 函数
public class TestHorizontalScrollView extends HorizontalScrollView {
public TestHorizontalScrollView(Context context) {
super(context);
}
@Override
protected void onScrollChanged(int l, int t, int oldl, int oldt) {
// TODO Auto-generated method stub
Log.i("Scrolling", "X from ["+oldl+"] to ["+l+"]");
super.onScrollChanged(l, t, oldl, oldt);
}
}
即使未触摸视图,此重写函数也将捕获滚动位置的所有更改。这应该使您的滚动视图保持同步。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)