From af18d0bb908ba2df9cceb731f4df61974d31ffe4 Mon Sep 17 00:00:00 2001 From: FongMi Date: Mon, 20 Feb 2023 09:11:19 +0800 Subject: [PATCH] [mobile] fix some bug --- .../main/java/com/fongmi/android/tv/api/ApiConfig.java | 2 +- .../java/com/fongmi/android/tv/event/RefreshEvent.java | 6 +++++- .../fongmi/android/tv/ui/activity/DetailActivity.java | 10 +++++++--- .../fongmi/android/tv/ui/activity/MainActivity.java | 1 + .../com/fongmi/android/tv/ui/fragment/VodFragment.java | 10 +++++++++- 5 files changed, 23 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/com/fongmi/android/tv/api/ApiConfig.java b/app/src/main/java/com/fongmi/android/tv/api/ApiConfig.java index 220e8b9e9..75562fc10 100644 --- a/app/src/main/java/com/fongmi/android/tv/api/ApiConfig.java +++ b/app/src/main/java/com/fongmi/android/tv/api/ApiConfig.java @@ -258,7 +258,7 @@ public class ApiConfig { } public String getAds() { - return ads; + return TextUtils.isEmpty(ads) ? "" : ads; } private void setAds(List ads) { diff --git a/app/src/main/java/com/fongmi/android/tv/event/RefreshEvent.java b/app/src/main/java/com/fongmi/android/tv/event/RefreshEvent.java index ef2cd8d0f..f17dec71c 100644 --- a/app/src/main/java/com/fongmi/android/tv/event/RefreshEvent.java +++ b/app/src/main/java/com/fongmi/android/tv/event/RefreshEvent.java @@ -30,6 +30,10 @@ public class RefreshEvent { EventBus.getDefault().post(new RefreshEvent(Type.WALL)); } + public static void empty() { + EventBus.getDefault().post(new RefreshEvent(Type.EMPTY)); + } + private RefreshEvent(Type type) { this.type = type; } @@ -39,6 +43,6 @@ public class RefreshEvent { } public enum Type { - IMAGE, VIDEO, HISTORY, KEEP, SIZE, WALL + IMAGE, VIDEO, HISTORY, KEEP, SIZE, WALL, EMPTY } } diff --git a/app/src/mobile/java/com/fongmi/android/tv/ui/activity/DetailActivity.java b/app/src/mobile/java/com/fongmi/android/tv/ui/activity/DetailActivity.java index 2e0a4c1d6..e0f64ac37 100644 --- a/app/src/mobile/java/com/fongmi/android/tv/ui/activity/DetailActivity.java +++ b/app/src/mobile/java/com/fongmi/android/tv/ui/activity/DetailActivity.java @@ -6,6 +6,7 @@ import android.content.Intent; import android.content.pm.ActivityInfo; import android.content.res.Configuration; import android.text.Html; +import android.text.Layout; import android.util.TypedValue; import android.view.View; import android.view.ViewGroup; @@ -323,9 +324,12 @@ public class DetailActivity extends BaseActivity implements CustomKeyDownVod.Lis @Override public void onGlobalLayout() { mBinding.content.getViewTreeObserver().removeOnGlobalLayoutListener(this); - int lines = mBinding.content.getLayout().getLineCount() - 1; - boolean ellipse = mBinding.content.getLayout().getEllipsisCount(lines) > 0; - mBinding.more.setVisibility(ellipse ? View.VISIBLE : View.GONE); + Layout layout = mBinding.content.getLayout(); + if (layout != null) { + int lines = layout.getLineCount() - 1; + boolean ellipse = layout.getEllipsisCount(lines) > 0; + mBinding.more.setVisibility(ellipse ? View.VISIBLE : View.GONE); + } } }); } diff --git a/app/src/mobile/java/com/fongmi/android/tv/ui/activity/MainActivity.java b/app/src/mobile/java/com/fongmi/android/tv/ui/activity/MainActivity.java index de2e75326..fdf11e07e 100644 --- a/app/src/mobile/java/com/fongmi/android/tv/ui/activity/MainActivity.java +++ b/app/src/mobile/java/com/fongmi/android/tv/ui/activity/MainActivity.java @@ -70,6 +70,7 @@ public class MainActivity extends BaseActivity implements NavigationBarView.OnIt @Override public void error(int resId) { + RefreshEvent.empty(); Notify.show(resId); } }; diff --git a/app/src/mobile/java/com/fongmi/android/tv/ui/fragment/VodFragment.java b/app/src/mobile/java/com/fongmi/android/tv/ui/fragment/VodFragment.java index ba6a0ec34..edc9e4d6a 100644 --- a/app/src/mobile/java/com/fongmi/android/tv/ui/fragment/VodFragment.java +++ b/app/src/mobile/java/com/fongmi/android/tv/ui/fragment/VodFragment.java @@ -13,6 +13,7 @@ import androidx.lifecycle.ViewModelProvider; import androidx.viewbinding.ViewBinding; import androidx.viewpager.widget.ViewPager; +import com.fongmi.android.tv.App; import com.fongmi.android.tv.R; import com.fongmi.android.tv.api.ApiConfig; import com.fongmi.android.tv.bean.Class; @@ -154,7 +155,14 @@ public class VodFragment extends BaseFragment implements SiteCallback, FilterCal @Subscribe(threadMode = ThreadMode.MAIN) public void onRefreshEvent(RefreshEvent event) { - if (event.getType() == RefreshEvent.Type.VIDEO) homeContent(); + switch (event.getType()) { + case VIDEO: + homeContent(); + break; + case EMPTY: + App.post(() -> EventBus.getDefault().post(Result.empty()), 250); + break; + } } private void homeContent() {