pull/606/head
FongMi 4 months ago
parent 5c5b402e6d
commit 6ba69703e0
  1. 5
      app/src/leanback/java/com/fongmi/android/tv/ui/activity/VodActivity.java
  2. 2
      app/src/leanback/java/com/fongmi/android/tv/ui/presenter/TypePresenter.java
  3. 21
      app/src/main/java/com/fongmi/android/tv/bean/Class.java
  4. 4
      app/src/mobile/java/com/fongmi/android/tv/ui/fragment/VodFragment.java

@ -132,8 +132,9 @@ public class VodActivity extends BaseActivity implements TypePresenter.OnClickLi
}
private void updateFilter(Class item) {
if (item.getFilter() == null) return;
getFragment().toggleFilter(item.toggleFilter());
if (!item.hasFilter()) return;
item.setFilter(!item.getFilter());
getFragment().toggleFilter(item.getFilter());
mAdapter.notifyArrayItemRangeChanged(0, mAdapter.size());
}

@ -48,7 +48,7 @@ public class TypePresenter extends Presenter {
}
private int getIcon(Class item) {
return item.getFilter() == null ? 0 : item.getFilter() ? R.drawable.ic_vod_filter_off : R.drawable.ic_vod_filter_on;
return !item.hasFilter() ? 0 : item.getFilter() ? R.drawable.ic_vod_filter_off : R.drawable.ic_vod_filter_on;
}
public static class ViewHolder extends Presenter.ViewHolder {

@ -46,7 +46,7 @@ public class Class implements Parcelable, Diffable<Class> {
@SerializedName("ratio")
private float ratio;
private Boolean filter;
private boolean filter;
private boolean activated;
public Class() {
@ -85,9 +85,7 @@ public class Class implements Parcelable, Diffable<Class> {
}
public void setFilters(List<Filter> filters) {
if (filters == null || filters.isEmpty()) return;
this.filters = filters;
this.setFilter(false);
}
public int getLand() {
@ -102,11 +100,11 @@ public class Class implements Parcelable, Diffable<Class> {
return ratio;
}
public void setFilter(Boolean filter) {
public void setFilter(boolean filter) {
this.filter = filter;
}
public Boolean getFilter() {
public boolean getFilter() {
return filter;
}
@ -118,11 +116,6 @@ public class Class implements Parcelable, Diffable<Class> {
this.activated = activated;
}
public boolean toggleFilter() {
setFilter(!getFilter());
return getFilter();
}
public boolean isHome() {
return "home".equals(getTypeId());
}
@ -131,6 +124,10 @@ public class Class implements Parcelable, Diffable<Class> {
return "1".equals(getTypeFlag());
}
public boolean hasFilter() {
return !getFilters().isEmpty();
}
public void trans() {
if (Trans.pass()) return;
this.typeName = Trans.s2t(typeName);
@ -169,7 +166,7 @@ public class Class implements Parcelable, Diffable<Class> {
dest.writeString(this.typeName);
dest.writeString(this.typeFlag);
dest.writeList(this.filters);
dest.writeValue(this.filter);
dest.writeByte(this.filter ? (byte) 1 : (byte) 0);
dest.writeInt(this.land);
dest.writeInt(this.circle);
dest.writeFloat(this.ratio);
@ -182,7 +179,7 @@ public class Class implements Parcelable, Diffable<Class> {
this.typeFlag = in.readString();
this.filters = new ArrayList<>();
in.readList(this.filters, Filter.class.getClassLoader());
this.filter = (Boolean) in.readValue(Boolean.class.getClassLoader());
this.filter = in.readByte() != 0;
this.land = in.readInt();
this.circle = in.readInt();
this.ratio = in.readFloat();

@ -147,11 +147,11 @@ public class VodFragment extends BaseFragment implements ConfigCallback, SiteCal
mBinding.top.setVisibility(View.INVISIBLE);
mBinding.link.setVisibility(View.VISIBLE);
mBinding.filter.setVisibility(View.GONE);
} else if (!mAdapter.get(position).getFilters().isEmpty()) {
} else if (mAdapter.get(position).hasFilter()) {
mBinding.top.setVisibility(View.INVISIBLE);
mBinding.link.setVisibility(View.GONE);
mBinding.filter.show();
} else if (position == 0 || mAdapter.get(position).getFilters().isEmpty()) {
} else if (position == 0 || !mAdapter.get(position).hasFilter()) {
mBinding.top.setVisibility(View.INVISIBLE);
mBinding.filter.setVisibility(View.GONE);
mBinding.link.show();

Loading…
Cancel
Save