Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/186.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在android的回收器视图中滚动到特定位置(不在视图中)的项目?_Android - Fatal编程技术网

如何在android的回收器视图中滚动到特定位置(不在视图中)的项目?

如何在android的回收器视图中滚动到特定位置(不在视图中)的项目?,android,Android,我有一个水平线性布局的回收视图中的图像列表。我想通过编程滚动到position=20,而该位置的图像不在视图中。 我试过使用: recyclerView.scrollToPosition(position); 但这仅在项目在视图中时滚动。我也尝试过使用smoothScrollBy(x,y)和getLayoutManager().scrollToPosition(position),但它不起作用 我也有同样的问题,使用延迟对我来说很有效 recyclerView.postDelayed(new

我有一个水平线性布局的回收视图中的图像列表。我想通过编程滚动到position=20,而该位置的图像不在视图中。 我试过使用:

recyclerView.scrollToPosition(position);

但这仅在项目在视图中时滚动。我也尝试过使用
smoothScrollBy(x,y)
getLayoutManager().scrollToPosition(position)
,但它不起作用

我也有同样的问题,使用延迟对我来说很有效

recyclerView.postDelayed(new Runnable(){
   @Override
   public void run(){
      recyclerView.scrollToPosition(position);
   }
},300);
使用以下代码:

yourRecyclerViewObject.getLayoutManager().scrollToPosition(itemPosition);

recyclerView.getLayoutManager().smoothScrollToPosition(recyclerView,null,position);这可能会对你有所帮助:@FlorescuCătălin请阅读我问题的描述,我已经尝试过这个解决方案,但它不起作用。我很确定你在那里做错了什么。我已经在两个方向上测试了该方法,并且正在工作。我的布局是水平的。同样在这种情况下,我不需要保持项目的像素位置,或者我应该计算它的运行时间。