我正在制作这个转换器应用程序,并花了一些时间试图弄清楚如何使用此scrollTo()函数滚动到我希望它集中在水平滚动视图中的按钮。
我在onCreate中实现了以下内容:
final HorizontalScrollView HscrollView1 = (HorizontalScrollView)findViewById(R.id.hsView1);
final HorizontalScrollView HscrollView2 = (HorizontalScrollView)findViewById(R.id.hsView2);
final Button cmBtn = (Button)findViewById(R.id.cm_id);
final Button KmBtn = (Button)findViewById(R.id.km_id);
final Button mmBtn = (Button)findViewById(R.id.mm_id);
HscrollView1.scrollTo((int) mmBtn.getX(), 0);
HscrollView2.scrollTo((int) cmBtn.getX(), 0);
运行APK后,应用程序启动时不会滚动到mm和cm按钮(不像我在代码中写的那样)
这个滚动视图对我来说似乎很令人沮丧,如果有人可以在凌晨5点帮助我,那真是太棒了
谢谢!
答案 0 :(得分:1)
替换
HscrollView1.scrollTo((int) mmBtn.getX(), 0);
HscrollView2.scrollTo((int) cmBtn.getX(), 0);
与
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
HscrollView1.scrollTo((int) mmBtn.getX(), 0);
HscrollView2.scrollTo((int) cmBtn.getX(), 0);
}
}, 500);
并运行您的代码。