From b3cc15fd29fcd6a94bd51e45ad9fd3864c6dba20 Mon Sep 17 00:00:00 2001 From: jhengazuki Date: Sat, 23 Aug 2025 01:08:44 +0800 Subject: [PATCH] Update ui --- .../com/fongmi/android/tv/bean/Result.java | 3 +- .../java/com/fongmi/android/tv/bean/Vod.java | 9 ++-- .../com/fongmi/android/tv/utils/ImgUtil.java | 4 +- .../com/fongmi/android/tv/utils/Util.java | 8 ++++ app/src/main/res/values-zh-rCN/strings.xml | 3 -- app/src/main/res/values-zh-rTW/strings.xml | 3 -- app/src/main/res/values/strings.xml | 3 -- app/src/main/res/values/styles.xml | 5 +++ .../android/tv/ui/activity/VideoActivity.java | 9 ++-- .../android/tv/ui/adapter/CollectAdapter.java | 2 +- .../android/tv/ui/adapter/HistoryAdapter.java | 10 ++--- .../android/tv/ui/adapter/KeepAdapter.java | 5 ++- .../android/tv/ui/holder/VodRectHolder.java | 4 +- .../mobile/res/drawable/shape_vod_name.xml | 2 +- app/src/mobile/res/layout/adapter_collect.xml | 11 +++-- app/src/mobile/res/layout/adapter_vod.xml | 44 ++++++++++++++----- .../mobile/res/layout/adapter_vod_list.xml | 4 +- app/src/mobile/res/layout/adapter_vod_one.xml | 2 +- .../mobile/res/layout/adapter_vod_rect.xml | 22 ++++++---- 19 files changed, 94 insertions(+), 59 deletions(-) diff --git a/app/src/main/java/com/fongmi/android/tv/bean/Result.java b/app/src/main/java/com/fongmi/android/tv/bean/Result.java index 91c8ba48c..746365185 100644 --- a/app/src/main/java/com/fongmi/android/tv/bean/Result.java +++ b/app/src/main/java/com/fongmi/android/tv/bean/Result.java @@ -12,6 +12,7 @@ import com.fongmi.android.tv.gson.DanmakuAdapter; import com.fongmi.android.tv.gson.FilterAdapter; import com.fongmi.android.tv.gson.MsgAdapter; import com.fongmi.android.tv.gson.UrlAdapter; +import com.fongmi.android.tv.utils.Util; import com.github.catvod.utils.Json; import com.github.catvod.utils.Trans; import com.google.gson.JsonElement; @@ -231,7 +232,7 @@ public class Result implements Parcelable { } public String getDesc() { - return TextUtils.isEmpty(desc) ? "" : desc; + return TextUtils.isEmpty(desc) ? "" : Util.clean(desc); } public List getDanmaku() { diff --git a/app/src/main/java/com/fongmi/android/tv/bean/Vod.java b/app/src/main/java/com/fongmi/android/tv/bean/Vod.java index 660327ae8..a9cc249ba 100644 --- a/app/src/main/java/com/fongmi/android/tv/bean/Vod.java +++ b/app/src/main/java/com/fongmi/android/tv/bean/Vod.java @@ -7,6 +7,7 @@ import android.view.View; import com.fongmi.android.tv.App; import com.fongmi.android.tv.utils.Sniffer; +import com.fongmi.android.tv.utils.Util; import com.github.catvod.utils.Trans; import com.google.gson.annotations.SerializedName; import com.google.gson.reflect.TypeToken; @@ -118,7 +119,7 @@ public class Vod implements Parcelable { } public String getVodName() { - return TextUtils.isEmpty(vodName) ? "" : vodName.trim(); + return TextUtils.isEmpty(vodName) ? "" : Util.clean(vodName); } public void setVodName(String vodName) { @@ -150,15 +151,15 @@ public class Vod implements Parcelable { } public String getVodDirector() { - return TextUtils.isEmpty(vodDirector) ? "" : vodDirector.trim(); + return TextUtils.isEmpty(vodDirector) ? "" : Util.clean(vodDirector); } public String getVodActor() { - return TextUtils.isEmpty(vodActor) ? "" : vodActor.trim(); + return TextUtils.isEmpty(vodActor) ? "" : Util.clean(vodActor); } public String getVodContent() { - return TextUtils.isEmpty(vodContent) ? "" : vodContent.trim().replace("\n", "
"); + return TextUtils.isEmpty(vodContent) ? "" : Util.clean(vodContent); } public String getVodPlayFrom() { diff --git a/app/src/main/java/com/fongmi/android/tv/utils/ImgUtil.java b/app/src/main/java/com/fongmi/android/tv/utils/ImgUtil.java index ad24501fc..92c379c11 100644 --- a/app/src/main/java/com/fongmi/android/tv/utils/ImgUtil.java +++ b/app/src/main/java/com/fongmi/android/tv/utils/ImgUtil.java @@ -67,8 +67,8 @@ public class ImgUtil { } private static Drawable getTextDrawable(String text, boolean rect) { - TextDrawable.Builder builder = new TextDrawable.Builder().withBorder(ResUtil.dp2px(2), ColorGenerator.get700(text)); - if (rect) return builder.buildRoundRect(text, ColorGenerator.get400(text), ResUtil.dp2px(8)); + TextDrawable.Builder builder = new TextDrawable.Builder(); + if (rect) return builder.buildRect(text, ColorGenerator.get400(text)); return builder.buildRound(text, ColorGenerator.get400(text)); } diff --git a/app/src/main/java/com/fongmi/android/tv/utils/Util.java b/app/src/main/java/com/fongmi/android/tv/utils/Util.java index 5e7f93472..6aadb8c42 100644 --- a/app/src/main/java/com/fongmi/android/tv/utils/Util.java +++ b/app/src/main/java/com/fongmi/android/tv/utils/Util.java @@ -12,6 +12,7 @@ import android.os.Build; import android.os.IBinder; import android.os.Parcelable; import android.provider.Settings; +import android.text.Html; import android.text.TextUtils; import android.view.View; import android.view.Window; @@ -98,6 +99,13 @@ public class Util { } } + public static String clean(String text) { + text = text.replace("\u00A0", ""); + text = text.replace("\u3000", ""); + text = Html.fromHtml(text, Html.FROM_HTML_MODE_LEGACY).toString(); + return text.trim(); + } + public static String getAndroidId() { try { String id = Settings.Secure.getString(App.get().getContentResolver(), Settings.Secure.ANDROID_ID); diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml index 15d7b87f6..60337c352 100644 --- a/app/src/main/res/values-zh-rCN/strings.xml +++ b/app/src/main/res/values-zh-rCN/strings.xml @@ -3,9 +3,6 @@ 影视 - - 上次看到%s - 密码 刷新 diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml index 29abfb190..61fccf20a 100644 --- a/app/src/main/res/values-zh-rTW/strings.xml +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -3,9 +3,6 @@ 影視 - - 上次看到%s - 密碼 刷新 diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 44f936ac7..f766801e5 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -3,9 +3,6 @@ TV - - Last seen %s - Pass Refresh diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml index e82a78c2f..43a2cb4b1 100644 --- a/app/src/main/res/values/styles.xml +++ b/app/src/main/res/values/styles.xml @@ -5,6 +5,11 @@ + + diff --git a/app/src/mobile/java/com/fongmi/android/tv/ui/activity/VideoActivity.java b/app/src/mobile/java/com/fongmi/android/tv/ui/activity/VideoActivity.java index bc7ab29e2..72fbd02d8 100644 --- a/app/src/mobile/java/com/fongmi/android/tv/ui/activity/VideoActivity.java +++ b/app/src/mobile/java/com/fongmi/android/tv/ui/activity/VideoActivity.java @@ -11,7 +11,6 @@ import android.graphics.drawable.Drawable; import android.net.Uri; import android.os.Bundle; import android.provider.Settings; -import android.text.Html; import android.text.SpannableStringBuilder; import android.text.Spanned; import android.text.TextUtils; @@ -468,10 +467,10 @@ public class VideoActivity extends BaseActivity implements Clock.Callback, Custo mBinding.video.setTag(item.getVodPic(getPic())); mBinding.name.setText(item.getVodName(getName())); setText(mBinding.remark, 0, item.getVodRemarks()); + setText(mBinding.content, 0, item.getVodContent()); setText(mBinding.site, R.string.detail_site, getSite().getName()); - setText(mBinding.content, 0, Html.fromHtml(item.getVodContent()).toString()); - setText(mBinding.actor, R.string.detail_actor, Html.fromHtml(item.getVodActor()).toString()); - setText(mBinding.director, R.string.detail_director, Html.fromHtml(item.getVodDirector()).toString()); + setText(mBinding.actor, R.string.detail_actor, item.getVodActor()); + setText(mBinding.director, R.string.detail_director, item.getVodDirector()); mBinding.contentLayout.setVisibility(mBinding.content.getVisibility()); mFlagAdapter.addAll(item.getVodFlags()); setOther(mBinding.other, item); @@ -540,7 +539,7 @@ public class VideoActivity extends BaseActivity implements Clock.Callback, Custo private void setPlayer(Result result) { result.getUrl().set(mQualityAdapter.getPosition()); - if (!result.getDesc().isEmpty()) setText(mBinding.content, R.string.detail_content, Html.fromHtml(result.getDesc()).toString()); + if (!result.getDesc().isEmpty()) setText(mBinding.content, R.string.detail_content, result.getDesc()); setUseParse(VodConfig.hasParse() && ((result.getPlayUrl().isEmpty() && VodConfig.get().getFlags().contains(result.getFlag())) || result.getJx() == 1)); if (mControlDialog != null && mControlDialog.isVisible()) mControlDialog.setParseVisible(isUseParse()); mBinding.control.parse.setVisibility(isFullscreen() && isUseParse() ? View.VISIBLE : View.GONE); diff --git a/app/src/mobile/java/com/fongmi/android/tv/ui/adapter/CollectAdapter.java b/app/src/mobile/java/com/fongmi/android/tv/ui/adapter/CollectAdapter.java index 257e33c45..f62bf33cb 100644 --- a/app/src/mobile/java/com/fongmi/android/tv/ui/adapter/CollectAdapter.java +++ b/app/src/mobile/java/com/fongmi/android/tv/ui/adapter/CollectAdapter.java @@ -54,7 +54,7 @@ public class CollectAdapter extends RecyclerView.Adapter { @Override public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { ViewHolder holder = new ViewHolder(AdapterVodBinding.inflate(LayoutInflater.from(parent.getContext()), parent, false)); - holder.binding.getRoot().getLayoutParams().width = width; - holder.binding.getRoot().getLayoutParams().height = height; + holder.binding.image.getLayoutParams().width = width; + holder.binding.image.getLayoutParams().height = height; return holder; } @@ -90,6 +90,7 @@ public class KeepAdapter extends RecyclerView.Adapter { holder.binding.remark.setVisibility(View.GONE); holder.binding.site.setVisibility(View.VISIBLE); holder.binding.site.setText(item.getSiteName()); + holder.binding.progress.setVisibility(View.GONE); holder.binding.delete.setVisibility(!delete ? View.GONE : View.VISIBLE); ImgUtil.loadVod(item.getVodName(), item.getVodPic(), holder.binding.image); setClickListener(holder.binding.getRoot(), item); diff --git a/app/src/mobile/java/com/fongmi/android/tv/ui/holder/VodRectHolder.java b/app/src/mobile/java/com/fongmi/android/tv/ui/holder/VodRectHolder.java index 5422cec3f..e7254f200 100644 --- a/app/src/mobile/java/com/fongmi/android/tv/ui/holder/VodRectHolder.java +++ b/app/src/mobile/java/com/fongmi/android/tv/ui/holder/VodRectHolder.java @@ -20,8 +20,8 @@ public class VodRectHolder extends BaseVodHolder { } public VodRectHolder size(int[] size) { - binding.getRoot().getLayoutParams().width = size[0]; - binding.getRoot().getLayoutParams().height = size[1]; + binding.image.getLayoutParams().width = size[0]; + binding.image.getLayoutParams().height = size[1]; return this; } diff --git a/app/src/mobile/res/drawable/shape_vod_name.xml b/app/src/mobile/res/drawable/shape_vod_name.xml index 6f82436d5..f97e1d6bc 100644 --- a/app/src/mobile/res/drawable/shape_vod_name.xml +++ b/app/src/mobile/res/drawable/shape_vod_name.xml @@ -6,7 +6,7 @@ android:bottomLeftRadius="8dp" android:bottomRightRadius="8dp" /> - + - diff --git a/app/src/mobile/res/layout/adapter_vod.xml b/app/src/mobile/res/layout/adapter_vod.xml index b9292209a..63cbf61bb 100644 --- a/app/src/mobile/res/layout/adapter_vod.xml +++ b/app/src/mobile/res/layout/adapter_vod.xml @@ -2,15 +2,15 @@ - + + \ No newline at end of file diff --git a/app/src/mobile/res/layout/adapter_vod_list.xml b/app/src/mobile/res/layout/adapter_vod_list.xml index 8ff352372..fe20cceb9 100644 --- a/app/src/mobile/res/layout/adapter_vod_list.xml +++ b/app/src/mobile/res/layout/adapter_vod_list.xml @@ -1,6 +1,5 @@ - - \ No newline at end of file