[mobile] fix vod size

pull/123/head
FongMi 3 years ago
parent eee17180a1
commit e8914ccbd2
  1. 5
      app/src/main/java/com/fongmi/android/tv/utils/ResUtil.java
  2. 13
      app/src/mobile/java/com/fongmi/android/tv/Product.java
  3. 18
      app/src/mobile/java/com/fongmi/android/tv/ui/activity/CollectActivity.java
  4. 10
      app/src/mobile/java/com/fongmi/android/tv/ui/adapter/HistoryAdapter.java
  5. 19
      app/src/mobile/java/com/fongmi/android/tv/ui/adapter/VodAdapter.java
  6. 2
      app/src/mobile/java/com/fongmi/android/tv/ui/fragment/child/HomeFragment.java
  7. 1
      app/src/mobile/java/com/fongmi/android/tv/ui/fragment/child/TypeFragment.java

@ -1,6 +1,7 @@
package com.fongmi.android.tv.utils;
import android.app.Activity;
import android.content.Context;
import android.content.res.Configuration;
import android.graphics.drawable.Drawable;
import android.util.DisplayMetrics;
@ -22,6 +23,10 @@ public class ResUtil {
return App.get().getResources().getDisplayMetrics();
}
public static int getScreenWidthPx(Context context) {
return context.getResources().getDisplayMetrics().widthPixels;
}
public static int getScreenWidthPx() {
return getDisplayMetrics().widthPixels;
}

@ -1,8 +1,10 @@
package com.fongmi.android.tv;
import android.content.Context;
import android.content.res.Resources;
import com.fongmi.android.tv.utils.Prefers;
import com.fongmi.android.tv.utils.ResUtil;
public class Product {
@ -16,4 +18,15 @@ public class Product {
public static void bootLive() {
}
public static int[] getSpec(Context context) {
return getSpec(context, ResUtil.dp2px(32) + ResUtil.dp2px(16 * (getColumn() - 1)), getColumn());
}
public static int[] getSpec(Context context, int space, int column) {
int base = ResUtil.getScreenWidthPx(context) - space;
int width = base / column;
int height = (int) (width / 0.75f);
return new int[]{width, height};
}
}

@ -11,6 +11,7 @@ import androidx.recyclerview.widget.GridLayoutManager;
import androidx.viewbinding.ViewBinding;
import com.fongmi.android.tv.Constant;
import com.fongmi.android.tv.Product;
import com.fongmi.android.tv.api.ApiConfig;
import com.fongmi.android.tv.bean.Collect;
import com.fongmi.android.tv.bean.Site;
@ -78,16 +79,6 @@ public class CollectActivity extends BaseActivity implements CollectAdapter.OnCl
});
}
private void setLayoutSize() {
int width = (ResUtil.getScreenWidthPx() - ResUtil.dp2px(64)) / 3;
int height = (int) (width / 0.75f);
RelativeLayout.LayoutParams params = (RelativeLayout.LayoutParams) mBinding.collect.getLayoutParams();
params.width = width + ResUtil.dp2px(24);
mBinding.collect.setLayoutParams(params);
mVodAdapter.setWidth(width);
mVodAdapter.setHeight(height);
}
private void setRecyclerView() {
mBinding.collect.setHasFixedSize(true);
mBinding.collect.setItemAnimator(null);
@ -95,6 +86,13 @@ public class CollectActivity extends BaseActivity implements CollectAdapter.OnCl
mBinding.recycler.setHasFixedSize(true);
mBinding.recycler.setAdapter(mVodAdapter = new VodAdapter(this));
mBinding.recycler.setLayoutManager(new GridLayoutManager(this, 2));
mVodAdapter.setSize(Product.getSpec(getActivity(), ResUtil.dp2px(64), 3));
}
private void setLayoutSize() {
RelativeLayout.LayoutParams params = (RelativeLayout.LayoutParams) mBinding.collect.getLayoutParams();
params.width = mVodAdapter.getWidth() + ResUtil.dp2px(24);
mBinding.collect.setLayoutParams(params);
}
private void setViewModel() {

@ -7,7 +7,6 @@ import android.view.ViewGroup;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
import com.fongmi.android.tv.Product;
import com.fongmi.android.tv.R;
import com.fongmi.android.tv.api.ApiConfig;
import com.fongmi.android.tv.bean.History;
@ -28,7 +27,6 @@ public class HistoryAdapter extends RecyclerView.Adapter<HistoryAdapter.ViewHold
public HistoryAdapter(OnClickListener listener) {
this.mListener = listener;
this.mItems = new ArrayList<>();
setLayoutSize();
}
public interface OnClickListener {
@ -40,11 +38,9 @@ public class HistoryAdapter extends RecyclerView.Adapter<HistoryAdapter.ViewHold
boolean onLongClick();
}
private void setLayoutSize() {
int space = ResUtil.dp2px(32) + ResUtil.dp2px(16 * (Product.getColumn() - 1));
int base = ResUtil.getScreenWidthPx() - space;
width = base / Product.getColumn();
height = (int) (width / 0.75f);
public void setSize(int[] size) {
this.width = size[0];
this.height = size[1];
}
public boolean isDelete() {

@ -6,11 +6,9 @@ import android.view.ViewGroup;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
import com.fongmi.android.tv.Product;
import com.fongmi.android.tv.bean.Vod;
import com.fongmi.android.tv.databinding.AdapterVodBinding;
import com.fongmi.android.tv.utils.ImgUtil;
import com.fongmi.android.tv.utils.ResUtil;
import java.util.ArrayList;
import java.util.List;
@ -24,7 +22,6 @@ public class VodAdapter extends RecyclerView.Adapter<VodAdapter.ViewHolder> {
public VodAdapter(OnClickListener listener) {
this.mListener = listener;
this.mItems = new ArrayList<>();
setLayoutSize();
}
public interface OnClickListener {
@ -34,19 +31,13 @@ public class VodAdapter extends RecyclerView.Adapter<VodAdapter.ViewHolder> {
boolean onLongClick(Vod item);
}
private void setLayoutSize() {
int space = ResUtil.dp2px(32) + ResUtil.dp2px(16 * (Product.getColumn() - 1));
int base = ResUtil.getScreenWidthPx() - space;
width = base / Product.getColumn();
height = (int) (width / 0.75f);
public void setSize(int[] size) {
this.width = size[0];
this.height = size[1];
}
public void setWidth(int width) {
this.width = width;
}
public void setHeight(int height) {
this.height = height;
public int getWidth() {
return width;
}
static class ViewHolder extends RecyclerView.ViewHolder {

@ -72,6 +72,8 @@ public class HomeFragment extends BaseFragment implements VodAdapter.OnClickList
mBinding.recommend.setHasFixedSize(true);
mBinding.recommend.setLayoutManager(new GridLayoutManager(getContext(), Product.getColumn()));
mBinding.recommend.setAdapter(mVodAdapter = new VodAdapter(this));
mHistoryAdapter.setSize(Product.getSpec(getActivity()));
mVodAdapter.setSize(Product.getSpec(getActivity()));
}
private void setViewModel() {

@ -88,6 +88,7 @@ public class TypeFragment extends BaseFragment implements CustomScroller.Callbac
mBinding.recycler.setHasFixedSize(true);
mBinding.recycler.setAdapter(mVodAdapter = new VodAdapter(this));
mBinding.recycler.setLayoutManager(new GridLayoutManager(getContext(), Product.getColumn()));
mVodAdapter.setSize(Product.getSpec(getActivity()));
}
private void setViewModel() {

Loading…
Cancel
Save