我正在实现一个水平的 RecyclerView
,它在滚动后将项目对齐到中心,例如 Google play App 水平列表。 This是评论。
我的代码如下:
MainMenuAdapter mainMenuAdapter = new MainMenuAdapter(this, mDataset);
final LinearLayoutManager layoutManagaer = new LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL, false);
RecyclerView mainMenu = (RecyclerView) findViewById(R.id.main_menu);
mainMenu.setLayoutManager(layoutManagaer);
mainMenu.setAdapter(mainMenuAdapter);
final SnapHelper snapHelper = new LinearSnapHelper();
snapHelper.attachToRecyclerView(mainMenu);
在 RecyclerView
将其对齐到中心后,如何获取中心项(位置)?没有任何监听器实现吗?
此外,当触摸项目 View 时,我想将其对齐到中心。我该怎么做?
最佳答案
如果需要View,可以调用
View view = snapHelper.findSnapView(layoutManagaer);
获得 View 后,您应该能够获取该 View 在数据集上的位置。例如使用
mainMenu.getChildAdapterPosition(view)
关于android - RecyclerView 对齐居中后如何获取居中项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43305295/