Android TV 使用HorizontalGridView

HorizontalGridView继承自RecycleView,属于leanback库,默认实现记住焦点,获得焦点的item保持居中(item大于1屏的时候)

//引用
implementation 'com.android.support:leanback-v17:27.1.1'
    mHorizontalGridView = mView.findViewById(R.id.pendant_gv);


    /**
     * 默认实现方式
     * 始终将重点项目保持在对齐位置。开发人员可以使用WINDOW_ALIGN_XXX和ITEM_ALIGN_XXX来定义焦                点项的对齐方式。
   在此模式下,当焦点返回视图时,将记住并恢复最后一个聚焦位置。
     */
    public final static int FOCUS_SCROLL_ALIGNED = 0;

    /**
     * 滚动以将焦点项目放在客户区域内。
     * 
     */
    public final static int FOCUS_SCROLL_ITEM = 1;

    /**
     *  当聚焦到客户区域外的项目时,滚动一页项目。页面大小与RecyclerView的客户区大小相匹配。
     * 
     * 
     */
    public final static int FOCUS_SCROLL_PAGE = 2;
   
//使用recycleView的item滚动方式

    mHorizontalGridView.setFocusScrollStrategy(BaseGridView.FOCUS_SCROLL_ITEM);
//默认选中的item

 mHorizontalGridView.setSelectedPosition(0);

//不用设置LayoutManager,内部已经实现,下一步直接设置adapter

 

你可能感兴趣的:(控件)