van*_*ram 8 android listview scroll
我的活动中有listview和imagebutton.当我单击图像按钮时,我想转到列表中的特定位置(我通过调用列表中的setSelection(int position)来执行此操作.当用户翻转列表视图然后单击图像按钮时会出现问题.列表变为到指定位置但继续滚动.
例如.当我进入fling模式,单击按钮,然后我转到第四个位置,但listview继续滚动,所以我最终选择了25
我已经编写了简单的方法来使用反射停止scoll ListView.
private void stopScroll(AbsListView view)
{
try
{
Field field = android.widget.AbsListView.class.getDeclaredField("mFlingRunnable");
field.setAccessible(true);
Object flingRunnable = field.get(view);
if (flingRunnable != null)
{
Method method = Class.forName("android.widget.AbsListView$FlingRunnable").getDeclaredMethod("endFling");
method.setAccessible(true);
method.invoke(flingRunnable);
}
}
catch (Exception e) {}
}
Run Code Online (Sandbox Code Playgroud)
只需调用stopScroll(myListView); 当你需要停止滚动.
// Stop scrolling
smoothScrollBy(0, 0);
Run Code Online (Sandbox Code Playgroud)
在内部,这将调用@Nik试图反映的方法.
| 归档时间: |
|
| 查看次数: |
7628 次 |
| 最近记录: |