diff --git a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/DetailActivity.java b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/DetailActivity.java
index 6a8001f12..856000156 100644
--- a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/DetailActivity.java
+++ b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/DetailActivity.java
@@ -817,34 +817,25 @@ public class DetailActivity extends BaseActivity implements CustomKeyDownVod.Lis
}
private void checkError(ErrorEvent event) {
- if (event.isParse() && mParseAdapter.size() > 0) {
- checkParse();
- } else {
- checkFlag();
- }
+ if (event.isParse() && mParseAdapter.size() > 0) checkParse();
+ else checkFlag();
}
private void checkParse() {
int position = getParsePosition();
- position = position < mParseAdapter.size() - 1 ? ++position : 0;
- setParseActivated((Parse) mParseAdapter.get(position));
+ if (position == mParseAdapter.size() - 1) checkFlag();
+ else nextParse(position);
}
private void checkFlag() {
int position = mBinding.flag.getSelectedPosition();
- if (position == mFlagAdapter.size() - 1) {
- checkSearch();
- } else {
- nextFlag(position);
- }
+ if (position == mFlagAdapter.size() - 1 || !getSite().isSwitchable()) checkSearch();
+ else nextFlag(position);
}
private void checkSearch() {
- if (mSearchAdapter.size() > 0 && isAutoMode()) {
- nextSite();
- } else {
- initSearch(getName(), getSite().isSwitchable());
- }
+ if (isAutoMode() && mSearchAdapter.size() > 0) nextSite();
+ else initSearch(getName(), getSite().isSwitchable());
}
private void initSearch(String keyword, boolean auto) {
@@ -886,6 +877,12 @@ public class DetailActivity extends BaseActivity implements CustomKeyDownVod.Lis
else return !item.getVodName().contains(keyword);
}
+ private void nextParse(int position) {
+ Parse parse = (Parse) mParseAdapter.get(position + 1);
+ Notify.show(ResUtil.getString(R.string.play_switch_parse, parse.getName()));
+ setParseActivated(parse);
+ }
+
private void nextFlag(int position) {
Vod.Flag flag = (Vod.Flag) mFlagAdapter.get(position + 1);
Notify.show(ResUtil.getString(R.string.play_switch_flag, flag.getFlag()));
diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml
index 73383dd9e..6cce18797 100644
--- a/app/src/main/res/values-zh-rCN/strings.xml
+++ b/app/src/main/res/values-zh-rCN/strings.xml
@@ -51,6 +51,7 @@
←
已切换正序播放
已切换倒序播放
+ 正在切换解析至「%s」
正在切换线路至「%s」
正在切换站源至「%s」
diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml
index 0f9833239..4eaa223e9 100644
--- a/app/src/main/res/values-zh-rTW/strings.xml
+++ b/app/src/main/res/values-zh-rTW/strings.xml
@@ -51,6 +51,7 @@
←
已切換正序播放
已切換倒序播放
+ 正在切换解析至「%s」
正在切換線路至「%s」
正在切換站源至「%s」
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index d8494a45c..04cc8f412 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -51,6 +51,7 @@
←
Normal play switched
Reverse play switched
+ Switching parse to %s
Switching flag to %s
Switching site to %s