Remove full type

pull/183/head
FongMi 3 years ago
parent f24db1dcbd
commit c06f4af82a
  1. 4
      app/src/leanback/java/com/fongmi/android/tv/Product.java
  2. 3
      app/src/leanback/java/com/fongmi/android/tv/ui/base/ViewType.java
  3. 29
      app/src/leanback/java/com/fongmi/android/tv/ui/holder/VodFullHolder.java
  4. 4
      app/src/leanback/java/com/fongmi/android/tv/ui/presenter/VodPresenter.java
  5. 6
      app/src/main/java/com/fongmi/android/tv/bean/Vod.java
  6. 12
      app/src/mobile/java/com/fongmi/android/tv/ui/adapter/VodAdapter.java
  7. 5
      app/src/mobile/java/com/fongmi/android/tv/ui/base/ViewType.java
  8. 2
      app/src/mobile/java/com/fongmi/android/tv/ui/fragment/TypeFragment.java
  9. 47
      app/src/mobile/java/com/fongmi/android/tv/ui/holder/VodFullHolder.java

@ -14,9 +14,7 @@ public class Product {
}
public static int getColumn(Vod.Style style) {
if (style.isLand()) return getColumn() - 1;
if (style.isFull()) return 3;
return getColumn();
return style.isLand() ? getColumn() - 1 : getColumn();
}
public static int[] getSpec(Vod.Style style) {

@ -4,6 +4,5 @@ public class ViewType {
public static final int RECT = 0;
public static final int OVAL = 1;
public static final int FULL = 2;
public static final int LIST = 3;
public static final int LIST = 2;
}

@ -1,29 +0,0 @@
package com.fongmi.android.tv.ui.holder;
import androidx.annotation.NonNull;
import com.fongmi.android.tv.bean.Vod;
import com.fongmi.android.tv.databinding.AdapterVodFullBinding;
import com.fongmi.android.tv.ui.base.BaseVodHolder;
import com.fongmi.android.tv.utils.ImgUtil;
public class VodFullHolder extends BaseVodHolder {
private final AdapterVodFullBinding binding;
public VodFullHolder(@NonNull AdapterVodFullBinding binding) {
super(binding.getRoot());
this.binding = binding;
}
public VodFullHolder size(int[] size) {
binding.getRoot().getLayoutParams().width = size[0];
binding.getRoot().getLayoutParams().height = size[1];
return this;
}
@Override
public void initView(Vod item) {
ImgUtil.load(item.getVodPic(), binding.image);
}
}

@ -7,13 +7,11 @@ import androidx.leanback.widget.Presenter;
import com.fongmi.android.tv.Product;
import com.fongmi.android.tv.bean.Vod;
import com.fongmi.android.tv.databinding.AdapterVodFullBinding;
import com.fongmi.android.tv.databinding.AdapterVodListBinding;
import com.fongmi.android.tv.databinding.AdapterVodOvalBinding;
import com.fongmi.android.tv.databinding.AdapterVodRectBinding;
import com.fongmi.android.tv.ui.base.BaseVodHolder;
import com.fongmi.android.tv.ui.base.ViewType;
import com.fongmi.android.tv.ui.holder.VodFullHolder;
import com.fongmi.android.tv.ui.holder.VodListHolder;
import com.fongmi.android.tv.ui.holder.VodOvalHolder;
import com.fongmi.android.tv.ui.holder.VodRectHolder;
@ -46,8 +44,6 @@ public class VodPresenter extends Presenter {
switch (style.getViewType()) {
case ViewType.LIST:
return new VodListHolder(AdapterVodListBinding.inflate(LayoutInflater.from(parent.getContext()), parent, false), mListener);
case ViewType.FULL:
return new VodFullHolder(AdapterVodFullBinding.inflate(LayoutInflater.from(parent.getContext()), parent, false)).size(size);
case ViewType.OVAL:
return new VodOvalHolder(AdapterVodOvalBinding.inflate(LayoutInflater.from(parent.getContext()), parent, false), mListener).size(size);
default:

@ -508,10 +508,6 @@ public class Vod {
return getType().equals("oval");
}
public boolean isFull() {
return getType().equals("full");
}
public boolean isList() {
return getType().equals("list");
}
@ -524,8 +520,6 @@ public class Vod {
switch (getType()) {
case "oval":
return ViewType.OVAL;
case "full":
return ViewType.FULL;
case "list":
return ViewType.LIST;
default:

@ -7,13 +7,11 @@ import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
import com.fongmi.android.tv.bean.Vod;
import com.fongmi.android.tv.databinding.AdapterVodFullBinding;
import com.fongmi.android.tv.databinding.AdapterVodListBinding;
import com.fongmi.android.tv.databinding.AdapterVodOvalBinding;
import com.fongmi.android.tv.databinding.AdapterVodRectBinding;
import com.fongmi.android.tv.ui.base.BaseVodHolder;
import com.fongmi.android.tv.ui.base.ViewType;
import com.fongmi.android.tv.ui.holder.VodFullHolder;
import com.fongmi.android.tv.ui.holder.VodListHolder;
import com.fongmi.android.tv.ui.holder.VodOvalHolder;
import com.fongmi.android.tv.ui.holder.VodRectHolder;
@ -25,8 +23,8 @@ public class VodAdapter extends RecyclerView.Adapter<BaseVodHolder> {
private final OnClickListener mListener;
private final List<Vod> mItems;
private Vod.Style style;
private int[] size;
private final Vod.Style style;
private final int[] size;
public VodAdapter(OnClickListener listener, Vod.Style style, int[] size) {
this.mListener = listener;
@ -46,10 +44,6 @@ public class VodAdapter extends RecyclerView.Adapter<BaseVodHolder> {
return style;
}
public boolean isLinear() {
return style.isList() || style.isFull();
}
public void addAll(List<Vod> items) {
int position = mItems.size() + 1;
mItems.addAll(items);
@ -82,8 +76,6 @@ public class VodAdapter extends RecyclerView.Adapter<BaseVodHolder> {
switch (viewType) {
case ViewType.LIST:
return new VodListHolder(AdapterVodListBinding.inflate(LayoutInflater.from(parent.getContext()), parent, false), mListener);
case ViewType.FULL:
return new VodFullHolder(AdapterVodFullBinding.inflate(LayoutInflater.from(parent.getContext()), parent, false));
case ViewType.OVAL:
return new VodOvalHolder(AdapterVodOvalBinding.inflate(LayoutInflater.from(parent.getContext()), parent, false), mListener).size(size);
default:

@ -4,9 +4,8 @@ public class ViewType {
public static final int RECT = 0;
public static final int OVAL = 1;
public static final int FULL = 2;
public static final int LIST = 3;
public static final int GRID = 4;
public static final int LIST = 2;
public static final int GRID = 3;
public static final int DARK = 0;
public static final int LIGHT = 1;

@ -116,7 +116,7 @@ public class TypeFragment extends BaseFragment implements CustomScroller.Callbac
private void setStyle(Vod.Style style) {
mBinding.recycler.setAdapter(mAdapter = new VodAdapter(this, style, Product.getSpec(getActivity(), style)));
mBinding.recycler.setLayoutManager(mAdapter.isLinear() ? new LinearLayoutManager(getActivity()) : new GridLayoutManager(getContext(), Product.getColumn(style)));
mBinding.recycler.setLayoutManager(style.isList() ? new LinearLayoutManager(getActivity()) : new GridLayoutManager(getContext(), Product.getColumn(style)));
}
private void setViewModel() {

@ -1,47 +0,0 @@
package com.fongmi.android.tv.ui.holder;
import android.graphics.Bitmap;
import android.graphics.drawable.Drawable;
import android.widget.ImageView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.bumptech.glide.request.target.CustomTarget;
import com.bumptech.glide.request.transition.Transition;
import com.fongmi.android.tv.R;
import com.fongmi.android.tv.bean.Vod;
import com.fongmi.android.tv.databinding.AdapterVodFullBinding;
import com.fongmi.android.tv.ui.base.BaseVodHolder;
import com.fongmi.android.tv.utils.ImgUtil;
public class VodFullHolder extends BaseVodHolder {
private final AdapterVodFullBinding binding;
public VodFullHolder(@NonNull AdapterVodFullBinding binding) {
super(binding.getRoot());
this.binding = binding;
}
@Override
public void initView(Vod item) {
ImgUtil.load(item.getVodPic(), binding.image, new CustomTarget<>() {
@Override
public void onResourceReady(@NonNull Bitmap resource, @Nullable Transition<? super Bitmap> transition) {
binding.image.setScaleType(ImageView.ScaleType.FIT_CENTER);
binding.image.setImageBitmap(resource);
}
@Override
public void onLoadFailed(@Nullable Drawable errorDrawable) {
binding.image.setScaleType(ImageView.ScaleType.CENTER);
binding.image.setImageResource(R.drawable.ic_img_error);
}
@Override
public void onLoadCleared(@Nullable Drawable placeholder) {
}
});
}
}
Loading…
Cancel
Save