我有一个ViewPager和一个HorizontalScrollView。我想以编程方式将HorizontalScrollView移动到ViewPager的相同位置,所以我会以这种方式表现:当我将ViewPager滚动到第1页时,HorizontalScrollView会自动移动到位置1.我已尝试使用ViewPager.OnPageChangeListener
和smoothScrollTo (int x, int y)
,但我不明白如何使用最后一种方法:特别是,我不明白在这种情况下X和Y是什么意思。代码如下:
public class MyClass extends AppCompatActivity implements ViewPager.OnPageChangeListener {
ViewPager viewPager;
HorizontalScrollView hscroll;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
...
viewPager = (ViewPager) findViewById(R.id.pager);
hscroll = (HorizontalScrollView) findViewById(R.id.horizontalScrollView);
viewPager.setOnPageChangeListener(this);
...
}
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
}
@Override
public void onPageSelected(int position) {
hscroll.smoothScrollTo(position-1, position);
Toast.makeText(getApplicationContext(), String.valueOf(position), Toast.LENGTH_SHORT).show();
}
@Override
public void onPageScrollStateChanged(int state) {
}
有什么想法吗?非常感谢每一位帮助,提前谢谢:)