pull/362/head
FongMi 2 years ago
parent 9e8463ce56
commit dbc0044801
  1. 2
      app/build.gradle
  2. 22
      app/src/leanback/java/com/fongmi/android/tv/ui/activity/LiveActivity.java
  3. 1
      app/src/leanback/java/com/fongmi/android/tv/ui/presenter/ChannelPresenter.java
  4. 3
      app/src/mobile/res/layout/activity_live.xml

@ -11,7 +11,7 @@ android {
minSdk 21 minSdk 21
targetSdk 28 targetSdk 28
versionCode 224 versionCode 224
versionName "fongmi-0127#2" versionName "fongmi-0127#3"
javaCompileOptions { javaCompileOptions {
annotationProcessorOptions { annotationProcessorOptions {
arguments = ["room.schemaLocation": "$projectDir/schemas".toString()] arguments = ["room.schemaLocation": "$projectDir/schemas".toString()]

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

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

@ -98,7 +98,8 @@
android:layout_marginStart="-32dp" android:layout_marginStart="-32dp"
android:background="?attr/selectableItemBackgroundBorderless" android:background="?attr/selectableItemBackgroundBorderless"
android:padding="4dp" android:padding="4dp"
android:src="@drawable/ic_action_arrow" /> android:src="@drawable/ic_action_arrow"
android:visibility="gone" />
</LinearLayout> </LinearLayout>
</FrameLayout> </FrameLayout>

Loading…
Cancel
Save