Support filter init

pull/137/head
FongMi 3 years ago
parent 33df10da3a
commit 76e6310e73
  1. 13
      app/src/leanback/java/com/fongmi/android/tv/ui/fragment/VodFragment.java
  2. 6
      app/src/main/java/com/fongmi/android/tv/bean/Filter.java
  3. 4
      app/src/main/java/com/fongmi/android/tv/bean/Value.java
  4. 9
      app/src/main/java/com/fongmi/android/tv/bean/Vod.java

@ -105,9 +105,9 @@ public class VodFragment extends BaseFragment implements CustomScroller.Callback
protected void initView() {
mPages = new ArrayList<>();
mExtends = new HashMap<>();
mFilters = Filter.arrayFrom(getFilter());
setRecyclerView();
setViewModel();
setFilters();
}
@Override
@ -140,6 +140,17 @@ public class VodFragment extends BaseFragment implements CustomScroller.Callback
});
}
private void setFilters() {
mFilters = Filter.arrayFrom(getFilter());
for (Filter filter : mFilters) {
if (filter.getInit() == null) continue;
Value value = new Value(filter.getInit());
int index = filter.getValue().indexOf(value);
filter.getValue().get(index).setActivated(value);
mExtends.put(filter.getKey(), filter.getInit());
}
}
private void setClick(ArrayObjectAdapter adapter, String key, Value item) {
for (int i = 0; i < adapter.size(); i++) ((Value) adapter.get(i)).setActivated(item);
adapter.notifyArrayItemRangeChanged(0, adapter.size());

@ -21,6 +21,8 @@ public class Filter implements Parcelable {
private String key;
@SerializedName("name")
private String name;
@SerializedName("init")
private String init;
@SerializedName("value")
private List<Value> value;
@ -45,6 +47,10 @@ public class Filter implements Parcelable {
return TextUtils.isEmpty(name) ? "" : name;
}
public String getInit() {
return init;
}
public List<Value> getValue() {
return value == null ? Collections.emptyList() : value;
}

@ -19,6 +19,10 @@ public class Value implements Parcelable {
public Value() {
}
public Value(String v) {
this.v = v;
}
public Value(String n, String v) {
this.n = Trans.s2t(n);
this.v = v;

@ -72,6 +72,9 @@ public class Vod implements Parcelable {
@SerializedName("vod_tag")
private String vodTag;
@SerializedName("cate")
private Object cate;
@SerializedName("style")
private Style style;
@ -154,6 +157,10 @@ public class Vod implements Parcelable {
return TextUtils.isEmpty(vodTag) ? "" : vodTag;
}
public Object getCate() {
return cate;
}
public Style getStyle() {
return style;
}
@ -199,7 +206,7 @@ public class Vod implements Parcelable {
}
public boolean isFolder() {
return getVodTag().equals("folder");
return getVodTag().equals("folder") || getCate() != null;
}
public boolean isManga() {

Loading…
Cancel
Save