但是,我正在使用加载器,并且在活动开始时我的ListVIEw没有完全填充.如果我在onActivityCreated()期间使用setSelection(),则列表将无法滚动到任何内容,并且将忽略该调用.
我现在通过在将来的某个时间发布滚动来解决这个问题,但这绝对不是理想的.我希望它能在数据完成加载时向右滚动.我差不多这样做了,但是swapCursor()没有刷新,它只是为将来安排了一个失效.
@OverrIDepublic voID onLoadFinished(Loader<Cursor> loader,Cursor data) { mAdapter.swapCursor(data); if (savedScrollposition != null) { Log.d(TAG,"loaded and scrolling to " + savedScrollposition); new Handler().postDelayed(new Runnable(){ @OverrIDe public voID run() { List.setSelection(savedScrollposition); savedScrollposition = null; } },100); }}
当ListVIEw完成数据填充时,您知道有什么方法可以直接滚动ListVIEw吗?
解决方法 试试这个:ListVIEw.post(new Runnable() { @OverrIDe public voID run() { ListVIEw.setSelection(savedScrollposition); savedScrollposition = null; } });总结
以上是内存溢出为你收集整理的android – 在光标加载后将ListView滚动到某个位置全部内容,希望文章能够帮你解决android – 在光标加载后将ListView滚动到某个位置所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)