pull/144/head
21561 9 months ago
parent c5937849ae
commit 7c6ffae9fa
  1. 2
      app/src/main/java/com/github/tvbox/osc/ui/activity/DetailActivity.java
  2. 20
      app/src/main/java/com/github/tvbox/osc/ui/adapter/SeriesAdapter.java

@ -175,7 +175,7 @@ public class DetailActivity extends BaseActivity {
this.mGridViewLayoutMgr = new V7GridLayoutManager(this.mContext, 6); this.mGridViewLayoutMgr = new V7GridLayoutManager(this.mContext, 6);
mGridView.setLayoutManager(this.mGridViewLayoutMgr); mGridView.setLayoutManager(this.mGridViewLayoutMgr);
// mGridView.setLayoutManager(new V7LinearLayoutManager(this.mContext, 0, false)); // mGridView.setLayoutManager(new V7LinearLayoutManager(this.mContext, 0, false));
seriesAdapter = new SeriesAdapter(); seriesAdapter = new SeriesAdapter(this.mGridViewLayoutMgr);
mGridView.setAdapter(seriesAdapter); mGridView.setAdapter(seriesAdapter);
mGridViewFlag = findViewById(R.id.mGridViewFlag); mGridViewFlag = findViewById(R.id.mGridViewFlag);
mGridViewFlag.setHasFixedSize(true); mGridViewFlag.setHasFixedSize(true);

@ -7,6 +7,7 @@ import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder; import com.chad.library.adapter.base.BaseViewHolder;
import com.github.tvbox.osc.R; import com.github.tvbox.osc.R;
import com.github.tvbox.osc.bean.VodInfo; import com.github.tvbox.osc.bean.VodInfo;
import com.owen.tvrecyclerview.widget.V7GridLayoutManager;
import java.util.ArrayList; import java.util.ArrayList;
@ -16,8 +17,10 @@ import java.util.ArrayList;
* @description: * @description:
*/ */
public class SeriesAdapter extends BaseQuickAdapter<VodInfo.VodSeries, BaseViewHolder> { public class SeriesAdapter extends BaseQuickAdapter<VodInfo.VodSeries, BaseViewHolder> {
public SeriesAdapter() { private V7GridLayoutManager mGridLayoutManager;
public SeriesAdapter(V7GridLayoutManager gridLayoutManager) {
super(R.layout.item_series, new ArrayList<>()); super(R.layout.item_series, new ArrayList<>());
this.mGridLayoutManager = gridLayoutManager;
} }
@Override @Override
@ -33,5 +36,20 @@ public class SeriesAdapter extends BaseQuickAdapter<VodInfo.VodSeries, BaseViewH
if (getData().size() == 1 && helper.getLayoutPosition() == 0) { if (getData().size() == 1 && helper.getLayoutPosition() == 0) {
helper.itemView.setNextFocusUpId(R.id.mGridViewFlag); helper.itemView.setNextFocusUpId(R.id.mGridViewFlag);
} }
int spanCount = mGridLayoutManager.getSpanCount();
int position = helper.getLayoutPosition();
if (position < spanCount) {
helper.itemView.setNextFocusUpId(R.id.mSeriesSortTv);
}
int totalCount = getData().size();
int remainder = totalCount % spanCount;
int lastRowStart = remainder == 0 ? totalCount - spanCount : totalCount - remainder;
if (position >= lastRowStart) {
helper.itemView.setNextFocusDownId(R.id.tvPlay);
}
} }
} }
Loading…
Cancel
Save