pull/585/head
FongMi 11 months ago
parent 6d4c8a85e8
commit 25aa7c8a04
  1. 11
      app/src/leanback/java/com/fongmi/android/tv/ui/activity/CollectActivity.java
  2. 18
      app/src/leanback/java/com/fongmi/android/tv/ui/adapter/RecordAdapter.java
  3. 17
      app/src/mobile/java/com/fongmi/android/tv/ui/adapter/RecordAdapter.java

@ -22,6 +22,7 @@ import androidx.viewpager.widget.ViewPager;
import com.fongmi.android.tv.App; import com.fongmi.android.tv.App;
import com.fongmi.android.tv.Constant; import com.fongmi.android.tv.Constant;
import com.fongmi.android.tv.R; import com.fongmi.android.tv.R;
import com.fongmi.android.tv.Setting;
import com.fongmi.android.tv.api.config.VodConfig; import com.fongmi.android.tv.api.config.VodConfig;
import com.fongmi.android.tv.bean.Collect; import com.fongmi.android.tv.bean.Collect;
import com.fongmi.android.tv.bean.Site; import com.fongmi.android.tv.bean.Site;
@ -32,6 +33,7 @@ import com.fongmi.android.tv.ui.fragment.CollectFragment;
import com.fongmi.android.tv.ui.presenter.CollectPresenter; import com.fongmi.android.tv.ui.presenter.CollectPresenter;
import com.fongmi.android.tv.utils.PauseExecutor; import com.fongmi.android.tv.utils.PauseExecutor;
import com.fongmi.android.tv.utils.ResUtil; import com.fongmi.android.tv.utils.ResUtil;
import com.google.gson.reflect.TypeToken;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
@ -73,6 +75,7 @@ public class CollectActivity extends BaseActivity {
protected void initView() { protected void initView() {
setRecyclerView(); setRecyclerView();
setViewModel(); setViewModel();
saveKeyword();
setPager(); setPager();
setSite(); setSite();
search(); search();
@ -137,6 +140,14 @@ public class CollectActivity extends BaseActivity {
} }
} }
private void saveKeyword() {
List<String> items = Setting.getKeyword().isEmpty() ? new ArrayList<>() : App.gson().fromJson(Setting.getKeyword(), new TypeToken<List<String>>() {}.getType());
items.remove(getKeyword());
items.add(0, getKeyword());
if (items.size() > 8) items.remove(8);
Setting.putKeyword(App.gson().toJson(items));
}
private void stop() { private void stop() {
if (mExecutor == null) return; if (mExecutor == null) return;
mExecutor.shutdownNow(); mExecutor.shutdownNow();

@ -39,25 +39,15 @@ public class RecordAdapter extends RecyclerView.Adapter<RecordAdapter.ViewHolder
} }
private void checkToAdd(String item) { private void checkToAdd(String item) {
int index = mItems.indexOf(item); mItems.remove(item);
if (index == -1) { mItems.add(0, item);
mItems.add(0, item); if (mItems.size() > 8) mItems.remove(8);
notifyItemInserted(0);
} else {
mItems.remove(index);
mItems.add(0, item);
notifyItemRangeChanged(0, mItems.size());
}
if (mItems.size() > 8) {
mItems.remove(8);
notifyItemRemoved(8);
}
} }
public void add(String item) { public void add(String item) {
checkToAdd(item); checkToAdd(item);
notifyDataSetChanged();
mListener.onDataChanged(getItemCount()); mListener.onDataChanged(getItemCount());
Setting.putKeyword(App.gson().toJson(mItems));
} }
@Override @Override

@ -39,23 +39,14 @@ public class RecordAdapter extends RecyclerView.Adapter<RecordAdapter.ViewHolder
} }
private void checkToAdd(String item) { private void checkToAdd(String item) {
int index = mItems.indexOf(item); mItems.remove(item);
if (index == -1) { mItems.add(0, item);
mItems.add(0, item); if (mItems.size() > 8) mItems.remove(8);
notifyItemInserted(0);
} else {
mItems.remove(index);
mItems.add(0, item);
notifyItemRangeChanged(0, mItems.size());
}
if (mItems.size() > 8) {
mItems.remove(8);
notifyItemRemoved(8);
}
} }
public void add(String item) { public void add(String item) {
checkToAdd(item); checkToAdd(item);
notifyDataSetChanged();
mListener.onDataChanged(getItemCount()); mListener.onDataChanged(getItemCount());
Setting.putKeyword(App.gson().toJson(mItems)); Setting.putKeyword(App.gson().toJson(mItems));
} }

Loading…
Cancel
Save