[leanback] add live changeable setting

pull/137/head
FongMi 3 years ago
parent fdecd14206
commit 7e646570c9
  1. 15
      app/src/leanback/java/com/fongmi/android/tv/ui/activity/LiveActivity.java
  2. 16
      app/src/leanback/res/layout/view_control_live.xml
  3. 8
      app/src/main/java/com/fongmi/android/tv/utils/Prefers.java

@ -157,6 +157,7 @@ public class LiveActivity extends BaseActivity implements GroupPresenter.OnClick
mBinding.control.speed.setOnClickListener(view -> onSpeed());
mBinding.control.invert.setOnClickListener(view -> onInvert());
mBinding.control.across.setOnClickListener(view -> onAcross());
mBinding.control.change.setOnClickListener(view -> onChange());
mBinding.control.player.setOnClickListener(view -> onPlayer());
mBinding.control.decode.setOnClickListener(view -> onDecode());
mBinding.control.speed.setOnLongClickListener(view -> onSpeedLong());
@ -194,6 +195,7 @@ public class LiveActivity extends BaseActivity implements GroupPresenter.OnClick
mBinding.control.speed.setText(mPlayers.getSpeedText());
mBinding.control.invert.setActivated(Prefers.isInvert());
mBinding.control.across.setActivated(Prefers.isAcross());
mBinding.control.change.setActivated(Prefers.isChange());
mBinding.control.home.setVisibility(LiveConfig.isOnly() ? View.GONE : View.VISIBLE);
}
@ -305,6 +307,11 @@ public class LiveActivity extends BaseActivity implements GroupPresenter.OnClick
mBinding.control.across.setActivated(Prefers.isAcross());
}
private void onChange() {
Prefers.putChange(!Prefers.isChange());
mBinding.control.change.setActivated(Prefers.isChange());
}
private void onPlayer() {
mPlayers.togglePlayer();
Prefers.putLivePlayer(mPlayers.getPlayer());
@ -592,18 +599,18 @@ public class LiveActivity extends BaseActivity implements GroupPresenter.OnClick
}
private void onError(ErrorEvent event) {
showError(event.getMsg());
mPlayers.stop();
startFlow(event);
startFlow();
}
private void startFlow(ErrorEvent event) {
private void startFlow() {
if (!Prefers.isChange()) return;
if (!mChannel.isLast()) {
nextLine(true);
} else if (isGone(mBinding.recycler)) {
mChannel.setLine(0);
nextChannel();
} else {
showError(event.getMsg());
}
}

@ -45,7 +45,7 @@
android:background="@drawable/selector_text"
android:focusable="true"
android:focusableInTouchMode="true"
android:nextFocusLeft="@id/across"
android:nextFocusLeft="@id/change"
android:textColor="@color/white"
android:textSize="14sp"
tools:text="EXO" />
@ -175,14 +175,26 @@
android:id="@+id/across"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="12dp"
android:background="@drawable/selector_text"
android:focusable="true"
android:focusableInTouchMode="true"
android:nextFocusRight="@id/player"
android:text="@string/play_across"
android:textColor="@color/text"
android:textSize="14sp" />
<TextView
android:id="@+id/change"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/selector_text"
android:focusable="true"
android:focusableInTouchMode="true"
android:nextFocusRight="@id/player"
android:text="@string/play_change"
android:textColor="@color/text"
android:textSize="14sp" />
</LinearLayout>
<com.fongmi.android.tv.ui.custom.CustomSeekView

@ -196,6 +196,14 @@ public class Prefers {
put("across", across);
}
public static boolean isChange() {
return getBoolean("change", true);
}
public static void putChange(boolean change) {
put("change", change);
}
public static boolean getUpdate() {
return getBoolean("update", true);
}

Loading…
Cancel
Save