diff --git a/app/src/main/java/com/gh/common/util/DialogUtils.java b/app/src/main/java/com/gh/common/util/DialogUtils.java index 48ae574a04..5d92d7a109 100644 --- a/app/src/main/java/com/gh/common/util/DialogUtils.java +++ b/app/src/main/java/com/gh/common/util/DialogUtils.java @@ -14,12 +14,15 @@ import android.os.CountDownTimer; import android.preference.PreferenceManager; import android.provider.Settings; import android.text.Html; +import android.text.Spannable; import android.text.SpannableStringBuilder; import android.text.Spanned; import android.text.TextPaint; import android.text.TextUtils; import android.text.method.LinkMovementMethod; import android.text.style.ClickableSpan; +import android.text.style.URLSpan; +import android.text.style.UnderlineSpan; import android.view.Gravity; import android.view.KeyEvent; import android.view.LayoutInflater; @@ -49,6 +52,7 @@ import com.facebook.drawee.view.SimpleDraweeView; import com.gh.common.AppExecutor; import com.gh.common.constant.Config; import com.gh.common.dialog.TrackableDialog; +import com.gh.common.view.CustomLinkMovementMethod; import com.gh.common.view.DrawableView; import com.gh.common.view.FixLinearLayoutManager; import com.gh.common.view.LimitHeightLinearLayout; @@ -1098,9 +1102,20 @@ public class DialogUtils { title.setText(entity.getTitle()); linkContent.setText(skipText); - linkContent.setMovementMethod(new LinkMovementMethod()); + linkContent.setMovementMethod(LinkMovementMethod.getInstance()); topContent.setText(entity.getTopContent()); - bottomContent.setText(entity.getBottomContent()); + bottomContent.setText(ExtensionsKt.fromHtml(entity.getBottomContent())); + bottomContent.setMovementMethod(CustomLinkMovementMethod.getInstance()); + + // Remove underline + Spannable sa = (Spannable) bottomContent.getText(); + for (URLSpan u : sa.getSpans(0, sa.length(), URLSpan.class)) { + sa.setSpan(new UnderlineSpan() { + public void updateDrawState(TextPaint tp) { + tp.setUnderlineText(false); + } + }, sa.getSpanStart(u), sa.getSpanEnd(u), 0); + } allowButton.setOnClickListener(view -> { dialog.dismiss(); diff --git a/app/src/main/java/com/gh/common/util/ToastUtils.kt b/app/src/main/java/com/gh/common/util/ToastUtils.kt index b1ec966bf4..16d96de377 100644 --- a/app/src/main/java/com/gh/common/util/ToastUtils.kt +++ b/app/src/main/java/com/gh/common/util/ToastUtils.kt @@ -1,65 +1,23 @@ package com.gh.common.util -import android.widget.Toast - import com.halo.assistant.HaloApp -import com.lightgame.utils.toast.ToastHandler +import com.lightgame.utils.toast.ToastHelper object ToastUtils { - /** 之前显示的内容 */ - private var mOldMsg: String? = null - - /** Toast对象 */ - private var mToast: Toast? = null - - /** 第一次时间 */ - private var mOneTime: Long = 0 - - /** 第二次时间 */ - private var mTwoTime: Long = 0 - - /** - * 显示Toast - * @param message - */ - fun showToast(message: String) { - showToast(message, -1) - } - - /** - * 显示Toast - * @param message - * @param gravity - */ - fun showToast(message: String, gravity: Int = -1, yOffset: Int = 0) { - if (mToast == null) { - mToast = ToastHandler.INSTANCE.getToastInstance(HaloApp.getInstance().application, message, Toast.LENGTH_SHORT) - if (gravity != -1) mToast!!.setGravity(gravity, 0, yOffset) else - mToast!!.setGravity(DisplayUtils.getToastDefaultGravity(), 0, DisplayUtils.getToastOffset()) - mToast!!.show() - mOneTime = System.currentTimeMillis() - } else { - mTwoTime = System.currentTimeMillis() - if (message == mOldMsg) { - if (mTwoTime - mOneTime > Toast.LENGTH_SHORT) { - if (gravity != -1) mToast!!.setGravity(gravity, 0, yOffset) else - mToast!!.setGravity(DisplayUtils.getToastDefaultGravity(), 0, DisplayUtils.getToastOffset()) - mToast!!.show() - } - } else { - mOldMsg = message - mToast!!.setText(message) - if (gravity != -1) mToast!!.setGravity(gravity, 0, yOffset) else - mToast!!.setGravity(DisplayUtils.getToastDefaultGravity(), 0, DisplayUtils.getToastOffset()) - mToast!!.show() - } - } - mOneTime = mTwoTime - } + @JvmStatic fun toast(message: String) { - if (mToast != null) mToast?.cancel() - mToast = ToastHandler.INSTANCE.getToastInstance(HaloApp.getInstance().application, message, Toast.LENGTH_SHORT) - mToast?.show() + showToast(message) } + + @JvmStatic + fun showToast(message: String) { + ToastHelper.showToast(HaloApp.getInstance(), message) + } + + @JvmStatic + fun showToast(message: String, gravity: Int = -1, yOffset: Int = 0) { + ToastHelper.showToast(HaloApp.getInstance(), message, gravity, yOffset) + } + } diff --git a/app/src/main/java/com/gh/gamecenter/MainActivity.java b/app/src/main/java/com/gh/gamecenter/MainActivity.java index 5f1df89dce..c697321271 100644 --- a/app/src/main/java/com/gh/gamecenter/MainActivity.java +++ b/app/src/main/java/com/gh/gamecenter/MainActivity.java @@ -344,7 +344,6 @@ public class MainActivity extends BaseActivity { || AdHelper.startupAd.getValue() == null) { showAd = false; getIntent().putExtra(SHOW_AD, false); - findViewById(R.id.layout_activity_content).setVisibility(View.VISIBLE); findViewById(R.id.maskContainer).setVisibility(View.GONE); mMainWrapperFragment.getWelcomeDialog(); } diff --git a/app/src/main/java/com/gh/gamecenter/SplashScreenActivity.java b/app/src/main/java/com/gh/gamecenter/SplashScreenActivity.java index eb41c46828..030273bd25 100644 --- a/app/src/main/java/com/gh/gamecenter/SplashScreenActivity.java +++ b/app/src/main/java/com/gh/gamecenter/SplashScreenActivity.java @@ -146,7 +146,7 @@ public class SplashScreenActivity extends BaseActivity { if (shouldRequestPermission) { requestPermission(); } else { - launchMainActivity(); + mStartMainActivityDirectly = false; } }); } else { diff --git a/app/src/main/java/com/gh/gamecenter/entity/PrivacyPolicyEntity.kt b/app/src/main/java/com/gh/gamecenter/entity/PrivacyPolicyEntity.kt index 4b970d2035..b47bdfe705 100644 --- a/app/src/main/java/com/gh/gamecenter/entity/PrivacyPolicyEntity.kt +++ b/app/src/main/java/com/gh/gamecenter/entity/PrivacyPolicyEntity.kt @@ -17,7 +17,7 @@ data class PrivacyPolicyEntity( val data = PrivacyPolicyEntity() data.title = "欢迎来到光环助手" data.topContent = "为提供完整的功能与稳定的服务,光环助手将向你申请开启以下权限:" - data.bottomContent = "你可以在系统设置中关闭授权,但可能会影响部分功能的正常使用" + data.bottomContent = "点击查看权限应用场景,你可以在系统设置中关闭授权,但可能会影响部分功能的正常使用" val permissions = arrayListOf() permissions.add(PermissionsEntity( icon = "res:///" + R.drawable.permission_storage, diff --git a/app/src/main/java/com/halo/assistant/fragment/myconcern/MyConcernRecommendAdapter.java b/app/src/main/java/com/halo/assistant/fragment/myconcern/MyConcernRecommendAdapter.java index 505f3bb7bf..db0147c4b4 100644 --- a/app/src/main/java/com/halo/assistant/fragment/myconcern/MyConcernRecommendAdapter.java +++ b/app/src/main/java/com/halo/assistant/fragment/myconcern/MyConcernRecommendAdapter.java @@ -54,8 +54,6 @@ public class MyConcernRecommendAdapter extends BaseRecyclerAdapter mRecommendGameList; private List mConcernGameList; - private Toast mToast; - private String mEntrance; public MyConcernRecommendAdapter(Context context, OnRequestCallBackListener listener, List concernGame, String entrance) { @@ -195,11 +193,7 @@ public class MyConcernRecommendAdapter extends BaseRecyclerAdapter + android:layout_height="match_parent" />