通过将焦点放在中心元素上来滚动VerticalGridView。我正在实现一个具有1列计数的Verticalgridview,并且我想将焦点放在位于中心的单个项目上并移动verticalgridview。I want to set focus on center object in vertical grid view and scroll the view by fixing the focus there

最佳答案

VerticalGridView包含其内置的布局管理器,可以做到这一点。请勿使用verticalGridView.setLayoutManager(new LinearLayoutManager()),通常使用RecyclerView。默认情况下,VerticalGridView的焦点项目始终位于中心,除非该项目位于开始/结尾或项目太少。

如果项目太少,可以使用verticalGridView.setWindowAlignment(WINDOW_ALIGN_NO_EDGE)。现在,开始/结尾处的项目也将位于中心。您还可以根据需要选择WINDOW_ALIGN_LOW_EDGEWINDOW_ALIGN_HIGH_EDGE。默认值为WINDOW_ALIGN_BOTH_EDGE

您也可以使用verticalGridView.setItemAlignmentOffsetPercent (offsetPercent)手动确定焦点位置。如果offsetPercent为50,则焦点位于中心;否则,焦点位于中心。如果是90,则指向底部;如果是10,则接近顶部,依此类推。

关于android - 通过将焦点放在中心元素上来滚动VerticalGridView或RecyclerView,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56934396/

10-10 01:51