我在Activity
中有一个GridView
,我想使用 scrollTo()
方法将GridView
滚动到特定位置。具体来说,按scrollTo()
滚动GridView
并在OnItemClickListener()
中提醒Dialog
,单击PositiveButton
向后滚动scrollTo()
。
如果我只是单击GridView
中的项目,效果很好,但是如果我在手指滚动GridView
后单击项目,GridView
将滚动到特定位置,然后立即向后滚动。 我不知道为什么或如何处理它。
gv.setOnItemClickListener(new OnItemClickListener()
{
public void onItemClick(AdapterView<?> parent, View v, int position, long id)
{
gv.scrollTo(0, 200);
AlertDialog.Builder dilog =new AlertDialog.Builder(MainActivity.this);
dilog.setPositiveButton("aa", new OnClickListener(){
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
gv.scrollTo(0, 0);
}
});
dilog.create().show();
}
});
GridView
有一些已知的scrollTo()
问题。根据您的情况,有一些解决方法,例如呼叫smoothScrollToPosition()
或setSelection()
。