Fix channel selected

pull/362/head
FongMi 2 years ago
parent cbdb76b9c8
commit 959db3e7dd
  1. 22
      app/src/leanback/java/com/fongmi/android/tv/ui/activity/LiveActivity.java
  2. 1
      app/src/leanback/java/com/fongmi/android/tv/ui/presenter/ChannelPresenter.java

@ -81,10 +81,9 @@ public class LiveActivity extends BaseActivity implements GroupPresenter.OnClick
private CustomKeyDownLive mKeyDown;
private LiveViewModel mViewModel;
private List<Group> mHides;
private View mChannlView;
private View mGroupView;
private Players mPlayers;
private Channel mChannel;
private View mOldView;
private Group mGroup;
private Runnable mR0;
private Runnable mR1;
@ -184,12 +183,6 @@ public class LiveActivity extends BaseActivity implements GroupPresenter.OnClick
if (mGroupAdapter.size() > 0) onChildSelected(child, mGroup = (Group) mGroupAdapter.get(position));
}
});
mBinding.channel.addOnChildViewHolderSelectedListener(new OnChildViewHolderSelectedListener() {
@Override
public void onChildViewHolderSelected(@NonNull RecyclerView parent, @Nullable RecyclerView.ViewHolder child, int position, int subposition) {
if (mChannelAdapter.size() > 0) onChildSelected(child);
}
});
}
private void setRecyclerView() {
@ -315,18 +308,11 @@ public class LiveActivity extends BaseActivity implements GroupPresenter.OnClick
mBinding.channel.setSelectedPosition(mGroup.getPosition());
}
private void onChildSelected(@Nullable RecyclerView.ViewHolder child) {
if (mChannlView != null) mChannlView.setSelected(false);
if (child == null) return;
mChannlView = child.itemView;
mChannlView.setSelected(true);
}
private void onChildSelected(@Nullable RecyclerView.ViewHolder child, Group group) {
if (mGroupView != null) mGroupView.setSelected(false);
if (mOldView != null) mOldView.setSelected(false);
if (child == null) return;
mGroupView = child.itemView;
mGroupView.setSelected(true);
mOldView = child.itemView;
mOldView.setSelected(true);
onItemClick(group);
resetPass();
}

@ -36,6 +36,7 @@ public class ChannelPresenter extends Presenter {
item.loadLogo(holder.binding.logo);
holder.binding.name.setText(item.getName());
holder.binding.number.setText(item.getNumber());
holder.binding.getRoot().setSelected(item.isSelected());
setOnClickListener(holder, view -> mListener.onItemClick(item));
holder.view.setOnLongClickListener(view -> mListener.onLongClick(item));
}

Loading…
Cancel
Save