HistoryActivity+del all

pull/102/head
watson1982 2 years ago committed by GitHub
parent b2a10d8a7e
commit 203e9c1944
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 69
      app/src/main/java/com/github/tvbox/osc/ui/activity/HistoryActivity.java

@ -1,9 +1,9 @@
package com.github.tvbox.osc.ui.activity;
import android.graphics.Color;
import android.os.Bundle;
import android.view.View;
import android.view.animation.BounceInterpolator;
import android.widget.ImageView;
import android.widget.TextView;
import com.chad.library.adapter.base.BaseQuickAdapter;
@ -14,7 +14,9 @@ import com.github.tvbox.osc.bean.VodInfo;
import com.github.tvbox.osc.cache.RoomDataManger;
import com.github.tvbox.osc.event.RefreshEvent;
import com.github.tvbox.osc.ui.adapter.HistoryAdapter;
import com.github.tvbox.osc.ui.dialog.ConfirmClearDialog;
import com.github.tvbox.osc.util.FastClickCheckUtil;
import com.github.tvbox.osc.util.HawkConfig;
import com.owen.tvrecyclerview.widget.TvRecyclerView;
import com.owen.tvrecyclerview.widget.V7GridLayoutManager;
@ -31,10 +33,11 @@ import java.util.List;
* @description:
*/
public class HistoryActivity extends BaseActivity {
private TextView tvDel;
private ImageView tvDelete;
private ImageView tvClear;
private TextView tvDelTip;
private TvRecyclerView mGridView;
private HistoryAdapter historyAdapter;
public static HistoryAdapter historyAdapter;
private boolean delMode = false;
@Override
@ -49,32 +52,42 @@ public class HistoryActivity extends BaseActivity {
}
private void toggleDelMode() {
HawkConfig.hotVodDelete = !HawkConfig.hotVodDelete;
historyAdapter.notifyDataSetChanged();
delMode = !delMode;
tvDelTip.setVisibility(delMode ? View.VISIBLE : View.GONE);
tvDel.setTextColor(delMode ? getResources().getColor(R.color.color_FF0057) : Color.WHITE);
tvDelTip.setVisibility(delMode ? View.VISIBLE : View.GONE);
}
private void initView() {
EventBus.getDefault().register(this);
tvDel = findViewById(R.id.tvDel);
tvDelete = findViewById(R.id.tvDelete);
tvClear = findViewById(R.id.tvClear);
tvDelTip = findViewById(R.id.tvDelTip);
mGridView = findViewById(R.id.mGridView);
mGridView.setHasFixedSize(true);
mGridView.setLayoutManager(new V7GridLayoutManager(this.mContext, isBaseOnWidth() ? 5 : 6));
historyAdapter = new HistoryAdapter();
mGridView.setAdapter(historyAdapter);
tvDel.setOnClickListener(new View.OnClickListener() {
tvDelete.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
toggleDelMode();
}
});
tvClear.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
ConfirmClearDialog dialog = new ConfirmClearDialog(mContext, "History");
dialog.show();
}
});
mGridView.setOnInBorderKeyEventListener(new TvRecyclerView.OnInBorderKeyEventListener() {
@Override
public boolean onInBorderKeyEvent(int direction, View focused) {
if (direction == View.FOCUS_UP) {
tvDel.setFocusable(true);
tvDel.requestFocus();
tvDelete.setFocusable(true);
tvClear.setFocusable(true);
tvDelete.requestFocus();
}
return false;
}
@ -87,7 +100,7 @@ public class HistoryActivity extends BaseActivity {
@Override
public void onItemSelected(TvRecyclerView parent, View itemView, int position) {
itemView.animate().scaleX(1.05f).scaleY(1.05f).setDuration(300).setInterpolator(new BounceInterpolator()).start();
itemView.animate().scaleX(1.1f).scaleY(1.1f).setDuration(300).setInterpolator(new BounceInterpolator()).start();
}
@Override
@ -101,32 +114,6 @@ public class HistoryActivity extends BaseActivity {
FastClickCheckUtil.check(view);
VodInfo vodInfo = historyAdapter.getData().get(position);
// HistoryDialog historyDialog = new HistoryDialog().build(mContext, vodInfo).setOnHistoryListener(new HistoryDialog.OnHistoryListener() {
// @Override
// public void onLook(VodInfo vodInfo) {
// if (vodInfo != null) {
// Bundle bundle = new Bundle();
// bundle.putInt("id", vodInfo.id);
// bundle.putString("sourceKey", vodInfo.sourceKey);
// jumpActivity(DetailActivity.class, bundle);
// }
// }
//
// @Override
// public void onDelete(VodInfo vodInfo) {
// if (vodInfo != null) {
// for (int i = 0; i < historyAdapter.getData().size(); i++) {
// if (vodInfo.id == historyAdapter.getData().get(i).id) {
// historyAdapter.remove(i);
// break;
// }
// }
// RoomDataManger.deleteVodRecord(vodInfo.sourceKey, vodInfo);
// }
// }
// });
// historyDialog.show();
if (vodInfo != null) {
if (delMode) {
historyAdapter.remove(position);
@ -143,10 +130,12 @@ public class HistoryActivity extends BaseActivity {
historyAdapter.setOnItemLongClickListener(new BaseQuickAdapter.OnItemLongClickListener() {
@Override
public boolean onItemLongClick(BaseQuickAdapter adapter, View view, int position) {
FastClickCheckUtil.check(view);
VodInfo vodInfo = historyAdapter.getData().get(position);
historyAdapter.remove(position);
RoomDataManger.deleteVodRecord(vodInfo.sourceKey, vodInfo);
// FastClickCheckUtil.check(view);
// VodInfo vodInfo = historyAdapter.getData().get(position);
// historyAdapter.remove(position);
// RoomDataManger.deleteVodRecord(vodInfo.sourceKey, vodInfo);
tvDelete.setFocusable(true);
toggleDelMode();
return true;
}
});

Loading…
Cancel
Save