[mobile] adjust history ui

pull/123/head
FongMi 3 years ago
parent c1e46f0112
commit 9e5bae48d4
  1. 9
      app/src/main/java/com/fongmi/android/tv/ui/custom/SpaceItemDecoration.java
  2. 7
      app/src/mobile/java/com/fongmi/android/tv/ui/fragment/child/SiteFragment.java

@ -13,6 +13,10 @@ public class SpaceItemDecoration extends RecyclerView.ItemDecoration {
private final int spacing;
private final int spanCount;
public SpaceItemDecoration(int spacing) {
this(-1, spacing);
}
public SpaceItemDecoration(int spanCount, int spacing) {
this.spanCount = spanCount;
this.spacing = ResUtil.dp2px(spacing);
@ -21,7 +25,10 @@ public class SpaceItemDecoration extends RecyclerView.ItemDecoration {
@Override
public void getItemOffsets(@NonNull Rect outRect, @NonNull View view, RecyclerView parent, @NonNull RecyclerView.State state) {
int position = parent.getChildAdapterPosition(view);
if (position >= 0) {
if (position >= 0 && spanCount == -1) {
outRect.left = position == 0 ? 0 : spacing / 2;
outRect.right = position == parent.getAdapter().getItemCount() - 1 ? 0 : spacing / 2;
} else if (position >= 0 && spanCount > 0) {
int column = position % spanCount;
outRect.left = column * spacing / spanCount;
outRect.right = spacing - (column + 1) * spacing / spanCount;

@ -6,6 +6,7 @@ import android.view.ViewGroup;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.viewbinding.ViewBinding;
import com.fongmi.android.tv.bean.History;
@ -44,12 +45,12 @@ public class SiteFragment extends BaseFragment implements VodAdapter.OnClickList
private void setRecyclerView() {
mBinding.history.setHasFixedSize(true);
mBinding.history.setLayoutManager(new GridLayoutManager(getContext(), 3));
mBinding.history.addItemDecoration(new SpaceItemDecoration(3, 16));
mBinding.history.addItemDecoration(new SpaceItemDecoration(16));
mBinding.history.setLayoutManager(new LinearLayoutManager(getContext(), LinearLayoutManager.HORIZONTAL, false));
mBinding.history.setAdapter(mHistoryAdapter = new HistoryAdapter(this));
mBinding.recommend.setHasFixedSize(true);
mBinding.recommend.setLayoutManager(new GridLayoutManager(getContext(), 3));
mBinding.recommend.addItemDecoration(new SpaceItemDecoration(3, 16));
mBinding.recommend.setLayoutManager(new GridLayoutManager(getContext(), 3));
mBinding.recommend.setAdapter(mVodAdapter = new VodAdapter(this));
}

Loading…
Cancel
Save