diff --git a/app/build.gradle b/app/build.gradle index bcd9208..df4afdf 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -29,8 +29,8 @@ android { minSdkVersion 24 targetSdkVersion 35 versionCode 2600 -// versionName "2.6.0" - versionName "2.6.0-Beta3" + versionName "2.6.0" +// versionName "2.6.0-Beta5" 4 testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" diff --git a/app/src/main/java/com/abbidot/tracker/adapter/SubscriptionHistoryAdapter.kt b/app/src/main/java/com/abbidot/tracker/adapter/SubscriptionHistoryAdapter.kt index 945fe8e..dd582f1 100644 --- a/app/src/main/java/com/abbidot/tracker/adapter/SubscriptionHistoryAdapter.kt +++ b/app/src/main/java/com/abbidot/tracker/adapter/SubscriptionHistoryAdapter.kt @@ -2,6 +2,7 @@ package com.abbidot.tracker.adapter import android.content.Context import android.content.Intent +import android.content.res.ColorStateList import android.view.View import android.widget.TextView import androidx.appcompat.widget.AppCompatImageView @@ -211,21 +212,17 @@ class SubscriptionHistoryAdapter( } holder.getView(R.id.iv_subscription_history_refund_arrow).apply { - visibility = if (item.enabled == ConstantInt.Type0) View.GONE + val imageTintColor = if (item.enabled == ConstantInt.Type0) R.color.block_color2 else when (item.orderStatus) { 1 -> { - if (item.subscriptionStatus == ConstantInt.Type1) View.GONE - else if (item.isRefundable == ConstantInt.Type1) View.VISIBLE - else View.GONE + if (item.isRefundable == ConstantInt.Type1) R.color.txt_black + else R.color.block_color2 } - 4 -> View.VISIBLE - 5 -> View.VISIBLE - 6 -> View.VISIBLE - 7 -> View.VISIBLE - 8 -> View.VISIBLE - else -> View.GONE + 4, 5, 6, 7, 8 -> R.color.txt_black + else -> R.color.block_color2 } + imageTintList = ColorStateList.valueOf(ContextCompat.getColor(context, imageTintColor)) } holder.getView(R.id.tv_subscription_history_auto_renew_result).apply { text = @@ -233,14 +230,21 @@ class SubscriptionHistoryAdapter( else context.getString(R.string.tracker_manage_set_led_off) } holder.getView(R.id.ll_subscription_history_auto_renew_item).apply { - visibility = if (item.enabled == ConstantInt.Type0 || (expiredTime <= 0)) View.GONE - else View.VISIBLE setOnClickListener { + if (item.enabled == ConstantInt.Type0 || (expiredTime <= 0)) return@setOnClickListener mHistoryActivity.updateSubscriptionStatus( item.subscriptionId, item.subscriptionStatus, position ) } } + holder.getView(R.id.iv_subscription_history_auto_renew_arrow).apply { + val imageTintColor = if (item.enabled == ConstantInt.Type0 || (expiredTime <= 0)) { + R.color.block_color2 + } else { + R.color.txt_black + } + imageTintList = ColorStateList.valueOf(ContextCompat.getColor(context, imageTintColor)) + } } private fun setRefundState( diff --git a/app/src/main/java/com/abbidot/tracker/base/BaseActivity.kt b/app/src/main/java/com/abbidot/tracker/base/BaseActivity.kt index 31ac034..29d4686 100644 --- a/app/src/main/java/com/abbidot/tracker/base/BaseActivity.kt +++ b/app/src/main/java/com/abbidot/tracker/base/BaseActivity.kt @@ -234,6 +234,8 @@ abstract class BaseActivity(val inflater: (inflater: LayoutInfl return findViewById(Window.ID_ANDROID_CONTENT) } + fun getResColor(colorRes: Int) = ContextCompat.getColor(mContext, colorRes) + /** * 监听键盘弹出和隐藏,解决键盘弹出挡住输入框的问题 */ diff --git a/app/src/main/java/com/abbidot/tracker/base/BaseFragment.kt b/app/src/main/java/com/abbidot/tracker/base/BaseFragment.kt index e4aba2e..56437be 100644 --- a/app/src/main/java/com/abbidot/tracker/base/BaseFragment.kt +++ b/app/src/main/java/com/abbidot/tracker/base/BaseFragment.kt @@ -96,6 +96,8 @@ abstract class BaseFragment( (activity as BaseActivity<*>).showNoCancelableLoading(show) } + fun getResColor(colorRes: Int) = (activity as BaseActivity<*>).getResColor(colorRes) + /** * 显示提示toast */ diff --git a/app/src/main/java/com/abbidot/tracker/ui/activity/subscribe/RefundDetailsActivity.kt b/app/src/main/java/com/abbidot/tracker/ui/activity/subscribe/RefundDetailsActivity.kt index bd92fa7..6b1b8fc 100644 --- a/app/src/main/java/com/abbidot/tracker/ui/activity/subscribe/RefundDetailsActivity.kt +++ b/app/src/main/java/com/abbidot/tracker/ui/activity/subscribe/RefundDetailsActivity.kt @@ -1,7 +1,8 @@ package com.abbidot.tracker.ui.activity.subscribe +import android.content.res.ColorStateList +import android.graphics.Typeface import android.view.View -import androidx.core.content.ContextCompat import com.abbidot.baselibrary.util.Utils import com.abbidot.tracker.R import com.abbidot.tracker.base.BaseActivity @@ -11,12 +12,14 @@ import com.abbidot.tracker.databinding.ActivityRefundDetailsBinding import com.abbidot.tracker.ui.fragment.subscribe.RefundPolicyBottomSheetFragment import com.abbidot.tracker.util.Util import com.abbidot.tracker.util.ViewUtil +import com.abbidot.tracker.widget.TypefaceTextView class RefundDetailsActivity : BaseActivity(ActivityRefundDetailsBinding::inflate) { //套餐 private var mSetMealBean: SubscriptionsOrderBean? = null + private var mTypeface: Typeface? = null override fun getTopBar() = mViewBinding.ilRefundDetailsTopBar.titleTopBar @@ -28,7 +31,7 @@ class RefundDetailsActivity : mSetMealBean = Util.getParcelableAdaptive( intent, ConstantString.SetMeal, SubscriptionsOrderBean::class.java ) - + mTypeface = ViewUtil.instance.setTypeface(mContext, ViewUtil.FONT_BOLD_NAME) mViewBinding.apply { mSetMealBean?.let { tvRefundDetailsPlanName.text = it.mealName @@ -39,8 +42,7 @@ class RefundDetailsActivity : tvRefundDetailsOrderTime.text = Utils.formatTime(it.payTime, Utils.DATE_FORMAT_PATTERN_CN2) - val typeface = ViewUtil.instance.setTypeface(mContext, ViewUtil.FONT_BOLD_NAME) - ilRefundDetailsStateStep1.tvRefundStateStepTitle.setTypeface(typeface) + setBoldAndColor(ilRefundDetailsStateStep1.tvRefundStateStepTitle) ilRefundDetailsStateStep1.ivRefundStateStepDot.isActivated = true ilRefundDetailsStateStep1.tvRefundStateStepTitle.setText(R.string.txt_request_submit) ilRefundDetailsStateStep1.tvRefundStateStepDesc.setText(R.string.txt_request_submit_dec) @@ -66,11 +68,12 @@ class RefundDetailsActivity : ilRefundDetailsStateStep1.ivRefundStateStepDot.isSelected = true ilRefundDetailsStateStep2.ivRefundStateStepDot.isActivated = true ilRefundDetailsStateStep2.tvRefundStateStepTitle.setTextColor( - ContextCompat.getColor( - mContext, R.color.select_color - ) + getResColor(R.color.select_color) ) - ilRefundDetailsStateStep2.tvRefundStateStepTitle.setTypeface(typeface) + ilRefundDetailsStateStep1.viewRefundStateStepLine.setBackgroundColor( + getResColor(R.color.orange_color8) + ) + setBoldAndColor(ilRefundDetailsStateStep2.tvRefundStateStepTitle) ilRefundDetailsStateStep2.tvRefundStateStepDesc.visibility = View.VISIBLE ilRefundDetailsStateStep2.tvRefundStateStepDesc.setText(R.string.txt_under_review_dec) } @@ -81,78 +84,117 @@ class RefundDetailsActivity : getString(R.string.txt_refund_processing_tips) ilRefundDetailsStateStep1.ivRefundStateStepDot.isSelected = true + ilRefundDetailsStateStep1.viewRefundStateStepLine.setBackgroundColor( + getResColor(R.color.orange_color8) + ) ilRefundDetailsStateStep2.ivRefundStateStepDot.isSelected = true - ilRefundDetailsStateStep2.tvRefundStateStepTitle.setTypeface(typeface) + ilRefundDetailsStateStep2.tvRefundStateStepDesc.setText(R.string.txt_under_review_dec2) + setBoldAndColor(ilRefundDetailsStateStep2.tvRefundStateStepTitle) ilRefundDetailsStateStep2.tvRefundStateStepDesc.visibility = View.VISIBLE - ilRefundDetailsStateStep2.tvRefundStateStepDesc.setText(R.string.txt_under_review_dec) + ilRefundDetailsStateStep2.viewRefundStateStepLine.setBackgroundColor( + getResColor(R.color.orange_color8) + ) ilRefundDetailsStateStep3.tvRefundStateStepTitle.setTextColor( - ContextCompat.getColor( - mContext, R.color.select_color - ) + getResColor(R.color.select_color) ) ilRefundDetailsStateStep3.tvRefundStateStepDesc.visibility = View.VISIBLE ilRefundDetailsStateStep3.tvRefundStateStepDesc.setText(R.string.txt_refund_processing_tips) ilRefundDetailsStateStep3.ivRefundStateStepDot.isActivated = true - ilRefundDetailsStateStep3.tvRefundStateStepTitle.setTypeface(typeface) + setBoldAndColor(ilRefundDetailsStateStep3.tvRefundStateStepTitle) } 6 -> { + rlRefundDetailsStateBg.setBackgroundResource(R.drawable.shape20_green_bg) + ivRefundDetailsStateImage.setImageResource(R.drawable.icon_refund_completed_state) tvRefundDetailsStateTitle.setText(R.string.txt_refund_completed) tvRefundDetailsStateContent.setText(R.string.txt_refund_success_tips) ilRefundDetailsStateStep1.ivRefundStateStepDot.isSelected = true + ilRefundDetailsStateStep1.viewRefundStateStepLine.setBackgroundColor( + getResColor(R.color.orange_color8) + ) ilRefundDetailsStateStep2.ivRefundStateStepDot.isSelected = true - ilRefundDetailsStateStep2.tvRefundStateStepTitle.setTypeface(typeface) + ilRefundDetailsStateStep2.tvRefundStateStepDesc.setText(R.string.txt_under_review_dec2) + setBoldAndColor(ilRefundDetailsStateStep2.tvRefundStateStepTitle) ilRefundDetailsStateStep2.tvRefundStateStepDesc.visibility = View.VISIBLE - ilRefundDetailsStateStep2.tvRefundStateStepDesc.setText(R.string.txt_under_review_dec) + ilRefundDetailsStateStep2.viewRefundStateStepLine.setBackgroundColor( + getResColor(R.color.orange_color8) + ) ilRefundDetailsStateStep3.tvRefundStateStepDesc.visibility = View.VISIBLE - ilRefundDetailsStateStep3.tvRefundStateStepDesc.setText(R.string.txt_refund_processing_tips) ilRefundDetailsStateStep3.ivRefundStateStepDot.isSelected = true - ilRefundDetailsStateStep3.tvRefundStateStepTitle.setTypeface(typeface) + ilRefundDetailsStateStep3.tvRefundStateStepDesc.setText(R.string.txt_refund_processing_tips2) + ilRefundDetailsStateStep3.viewRefundStateStepLine.setBackgroundColor( + getResColor(R.color.orange_color8) + ) + setBoldAndColor(ilRefundDetailsStateStep3.tvRefundStateStepTitle) ilRefundDetailsStateStep4.ivRefundStateStepDot.isSelected = true - ilRefundDetailsStateStep4.tvRefundStateStepTitle.setTypeface(typeface) + setBoldAndColor(ilRefundDetailsStateStep4.tvRefundStateStepTitle) ilRefundDetailsStateStep4.tvRefundStateStepDesc.visibility = View.VISIBLE ilRefundDetailsStateStep4.tvRefundStateStepDesc.setText(R.string.txt_refund_success_tips) } 7 -> { + ivRefundDetailsStateImage.setImageResource(R.drawable.icon_refund_fail_state) tvRefundDetailsStateTitle.setText(R.string.txt_refund_unsuccessful) tvRefundDetailsStateContent.setText(R.string.txt_refund_fail_tips) ilRefundDetailsStateStep1.ivRefundStateStepDot.isSelected = true + ilRefundDetailsStateStep1.viewRefundStateStepLine.setBackgroundColor( + getResColor(R.color.orange_color8) + ) ilRefundDetailsStateStep2.ivRefundStateStepDot.isSelected = true - ilRefundDetailsStateStep2.tvRefundStateStepTitle.setTypeface(typeface) + ilRefundDetailsStateStep2.tvRefundStateStepDesc.setText(R.string.txt_under_review_dec2) + setBoldAndColor(ilRefundDetailsStateStep2.tvRefundStateStepTitle) ilRefundDetailsStateStep2.tvRefundStateStepDesc.visibility = View.VISIBLE - ilRefundDetailsStateStep2.tvRefundStateStepDesc.setText(R.string.txt_under_review_dec) + ilRefundDetailsStateStep2.viewRefundStateStepLine.setBackgroundColor( + getResColor(R.color.orange_color8) + ) ilRefundDetailsStateStep3.tvRefundStateStepDesc.visibility = View.VISIBLE - ilRefundDetailsStateStep3.tvRefundStateStepDesc.setText(R.string.txt_refund_processing_tips) + ilRefundDetailsStateStep3.viewRefundStateStepLine.setBackgroundColor( + getResColor(R.color.orange_color8) + ) ilRefundDetailsStateStep3.ivRefundStateStepDot.isSelected = true - ilRefundDetailsStateStep3.tvRefundStateStepTitle.setTypeface(typeface) + ilRefundDetailsStateStep3.tvRefundStateStepDesc.setText(R.string.txt_refund_processing_tips2) + setBoldAndColor(ilRefundDetailsStateStep3.tvRefundStateStepTitle) ilRefundDetailsStateStep4.tvRefundStateStepTitle.setText(R.string.txt_refund_failed) - ilRefundDetailsStateStep4.tvRefundStateStepTitle.setTypeface(typeface) + setBoldAndColor(ilRefundDetailsStateStep4.tvRefundStateStepTitle) ilRefundDetailsStateStep4.tvRefundStateStepDesc.visibility = View.VISIBLE ilRefundDetailsStateStep4.tvRefundStateStepDesc.setText(R.string.txt_refund_failed_dec) - ilRefundDetailsStateStep4.ivRefundStateStepDot.setImageResource(R.drawable.icon_permission_error_check_svg) + ilRefundDetailsStateStep4.ivRefundStateStepDot.setImageResource(R.drawable.qmui_icon_notify_error) + ilRefundDetailsStateStep4.ivRefundStateStepDot.imageTintList = + ColorStateList.valueOf(getResColor(R.color.red_color5)) } 8 -> { + ivRefundDetailsStateImage.setImageResource(R.drawable.icon_refund_fail_state) tvRefundDetailsStateTitle.setText(R.string.txt_refund_unsuccessful) tvRefundDetailsStateContent.setText(R.string.txt_refund_fail_tips) ilRefundDetailsStateStep1.ivRefundStateStepDot.isSelected = true + ilRefundDetailsStateStep1.viewRefundStateStepLine.setBackgroundColor( + getResColor(R.color.orange_color8) + ) ilRefundDetailsStateStep2.ivRefundStateStepDot.isSelected = true - ilRefundDetailsStateStep2.tvRefundStateStepTitle.setTypeface(typeface) + setBoldAndColor(ilRefundDetailsStateStep2.tvRefundStateStepTitle) + ilRefundDetailsStateStep2.tvRefundStateStepDesc.setText(R.string.txt_under_review_dec2) ilRefundDetailsStateStep2.tvRefundStateStepDesc.visibility = View.VISIBLE - ilRefundDetailsStateStep2.tvRefundStateStepDesc.setText(R.string.txt_under_review_dec) + ilRefundDetailsStateStep2.viewRefundStateStepLine.setBackgroundColor( + getResColor(R.color.orange_color8) + ) ilRefundDetailsStateStep3.tvRefundStateStepDesc.visibility = View.VISIBLE - ilRefundDetailsStateStep3.tvRefundStateStepDesc.setText(R.string.txt_refund_processing_tips) + ilRefundDetailsStateStep3.tvRefundStateStepDesc.setText(R.string.txt_refund_processing_tips2) + ilRefundDetailsStateStep3.viewRefundStateStepLine.setBackgroundColor( + getResColor(R.color.orange_color8) + ) ilRefundDetailsStateStep3.ivRefundStateStepDot.isSelected = true - ilRefundDetailsStateStep3.tvRefundStateStepTitle.setTypeface(typeface) + setBoldAndColor(ilRefundDetailsStateStep3.tvRefundStateStepTitle) ilRefundDetailsStateStep4.tvRefundStateStepTitle.setText(R.string.txt_refund_declined) - ilRefundDetailsStateStep4.tvRefundStateStepTitle.setTypeface(typeface) + setBoldAndColor(ilRefundDetailsStateStep4.tvRefundStateStepTitle) ilRefundDetailsStateStep4.tvRefundStateStepDesc.visibility = View.VISIBLE ilRefundDetailsStateStep4.tvRefundStateStepDesc.setText(R.string.txt_refund_fail_tips) - ilRefundDetailsStateStep4.ivRefundStateStepDot.setImageResource(R.drawable.icon_permission_error_check_svg) + ilRefundDetailsStateStep4.ivRefundStateStepDot.setImageResource(R.drawable.qmui_icon_notify_error) + ilRefundDetailsStateStep4.ivRefundStateStepDot.imageTintList = + ColorStateList.valueOf(getResColor(R.color.red_color5)) } } } @@ -161,6 +203,13 @@ class RefundDetailsActivity : } } + private fun setBoldAndColor(tv: TypefaceTextView) { + mTypeface?.let { + tv.setTypeface(it) + } + tv.setTextColor(getResColor(R.color.data_black_color)) + } + override fun onClick(v: View?) { mViewBinding.apply { when (v!!) { diff --git a/app/src/main/java/com/abbidot/tracker/ui/fragment/account/CreateAccountV2OneFragment.kt b/app/src/main/java/com/abbidot/tracker/ui/fragment/account/CreateAccountV2OneFragment.kt index 4faf547..846f8ed 100644 --- a/app/src/main/java/com/abbidot/tracker/ui/fragment/account/CreateAccountV2OneFragment.kt +++ b/app/src/main/java/com/abbidot/tracker/ui/fragment/account/CreateAccountV2OneFragment.kt @@ -2,8 +2,8 @@ package com.abbidot.tracker.ui.fragment.account import android.content.Context import android.content.Intent +import android.graphics.Color import android.text.InputType -import android.text.SpannableString import android.text.SpannableStringBuilder import android.text.Spanned import android.text.TextUtils @@ -63,11 +63,37 @@ class CreateAccountV2OneFragment : BaseFragment Unit, + text2: String, + color2: Int, + click2: () -> Unit, + showUnderline: Boolean = false + ) { + try { + val ssb = SpannableStringBuilder(fullText) + // span1 + val s1Start = fullText.indexOf(text1) + if (s1Start != -1) { + ssb.setSpan(object : ClickableSpan() { + override fun onClick(widget: View) = click1() + override fun updateDrawState(ds: android.text.TextPaint) { + super.updateDrawState(ds) + ds.color = color1 + ds.isUnderlineText = showUnderline + } + }, s1Start, s1Start + text1.length, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE) + } + + // span2 + val s2Start = fullText.indexOf(text2) + if (s2Start != -1) { + ssb.setSpan(object : ClickableSpan() { + override fun onClick(widget: View) = click2() + override fun updateDrawState(ds: android.text.TextPaint) { + super.updateDrawState(ds) + ds.color = color2 + ds.isUnderlineText = showUnderline + } + }, s2Start, s2Start + text2.length, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE) + } + + text = ssb + movementMethod = LinkMovementMethod.getInstance() + highlightColor = Color.TRANSPARENT + } catch (e: Exception) { + LogUtil.e("解析同意隐私政策错误${e.message}") + } + } + + private fun continueClick() { mViewBinding.apply { val email = ilCreateAccountV2Email.etInputContent.text.toString() @@ -137,18 +210,6 @@ class CreateAccountV2OneFragment : BaseFragment continueClick() - - ilCreateAccountV2PolicyTermsCheck.tvLoginAgreePrivacyContent -> ViewUtil.instance.goHtmlAssetContent( - mActivity!!, - getString(R.string.txt_privacy_policy), - getString(R.string.txt_privacy_html) - ) - - ilCreateAccountV2PolicyTermsCheck.tvLoginAgreeTermsContent -> ViewUtil.instance.goHtmlAssetContent( - mActivity!!, - getString(R.string.txt_service_contract), - getString(R.string.txt_terms_html) - ) } } } diff --git a/app/src/main/res/drawable/shape20_cyan_bg.xml b/app/src/main/res/drawable/shape20_cyan_bg.xml new file mode 100644 index 0000000..108b723 --- /dev/null +++ b/app/src/main/res/drawable/shape20_cyan_bg.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/shape20_green_bg.xml b/app/src/main/res/drawable/shape20_green_bg.xml new file mode 100644 index 0000000..d69c0c6 --- /dev/null +++ b/app/src/main/res/drawable/shape20_green_bg.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_refund_details.xml b/app/src/main/res/layout/activity_refund_details.xml index 6a0ce3d..51fd17f 100644 --- a/app/src/main/res/layout/activity_refund_details.xml +++ b/app/src/main/res/layout/activity_refund_details.xml @@ -27,7 +27,8 @@ diff --git a/app/src/main/res/layout/fragment_home_pet.xml b/app/src/main/res/layout/fragment_home_pet.xml index b270ec5..467bcf3 100644 --- a/app/src/main/res/layout/fragment_home_pet.xml +++ b/app/src/main/res/layout/fragment_home_pet.xml @@ -57,7 +57,8 @@ android:id="@+id/tv_home_pet_v2_type" style="@style/my_TextView_style_v2" android:layout_alignTop="@id/tv_home_pet_v2_type_title" - android:layout_marginStart="@dimen/dp_42" + android:layout_toEndOf="@id/tv_home_pet_v2_type_title" + android:layout_marginStart="@dimen/dp_10" android:text="@string/txt_dog" android:textSize="@dimen/textSize14" /> diff --git a/app/src/main/res/layout/item_my_subscription_layout.xml b/app/src/main/res/layout/item_my_subscription_layout.xml index bd88f7c..bbae436 100644 --- a/app/src/main/res/layout/item_my_subscription_layout.xml +++ b/app/src/main/res/layout/item_my_subscription_layout.xml @@ -71,6 +71,7 @@ style="@style/my_TextView_style_v2" android:layout_marginStart="@dimen/dp_4" android:text="@string/app_name" + android:gravity="start" android:textSize="@dimen/textSize14" app:typeface="@string/roboto_regular_font" /> @@ -80,6 +81,7 @@ style="@style/my_TextView_style_v2" android:text="@string/txt_auto_subscription_year" android:textSize="@dimen/textSize14" + android:gravity="start" app:typeface="@string/roboto_regular_font" /> diff --git a/app/src/main/res/layout/layout_create_account_policy_terms.xml b/app/src/main/res/layout/layout_create_account_policy_terms.xml index 48220a7..5dcff3e 100644 --- a/app/src/main/res/layout/layout_create_account_policy_terms.xml +++ b/app/src/main/res/layout/layout_create_account_policy_terms.xml @@ -12,7 +12,6 @@ android:layout_height="wrap_content" android:minWidth="0dp" android:minHeight="0dp" - android:text="@string/register_txt_agree1" android:textColor="@color/select_color3" android:textSize="@dimen/textSize12" /> @@ -20,28 +19,10 @@ android:id="@+id/tv_login_agree_privacy_content" style="@style/my_TextView_style" android:layout_width="wrap_content" - android:layout_marginHorizontal="@dimen/dp_2" android:text="@string/txt_privacy_policy" - android:textColor="@color/txt_policy_color" - android:textSize="@dimen/textSize12" - app:typeface="@string/roboto_regular_font" /> - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/layout_refund_state_item.xml b/app/src/main/res/layout/layout_refund_state_item.xml index 8c15f9d..6dd1c6e 100644 --- a/app/src/main/res/layout/layout_refund_state_item.xml +++ b/app/src/main/res/layout/layout_refund_state_item.xml @@ -17,7 +17,7 @@ android:layout_width="@dimen/dp_2" android:layout_height="@dimen/dp_26" android:layout_below="@id/iv_refund_state_step_dot" - android:layout_marginStart="@dimen/dp_10" + android:layout_marginStart="9dp" android:background="@color/slope_bg" /> diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index dd58990..b21ac7f 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -534,7 +534,7 @@ Doppeltes WLAN ist nicht zulässig Netzwerkeinrichtung Geben Sie das genaue Gewicht ein, um die Genauigkeit der Kalorienberechnung zu verbessern. - Verlängerung aktivieren + Auto-Verlängerung Über das Gewicht Bestellung Premium festlegen @@ -958,7 +958,8 @@ Antrag eingereicht Ihr Erstattungsantrag wird geprüft. - + Ihr Rückerstattungsantrag wurde geprüft. + Ihre Rückerstattung wurde bearbeitet. Ihre Erstattung konnte nicht abgeschlossen werden. Bitte versuchen Sie es erneut oder kontaktieren Sie den Support. Erstattung fehlgeschlagen diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index 8e15843..261a645 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -173,7 +173,7 @@ Toutes les photos Veuillez autoriser les permissions requises Modifier - Renouvellement automatique : + Renouv. auto : Recharger Total général Réessayer @@ -534,7 +534,7 @@ Désolé, les réseaux Wi-Fi en double ne sont pas autorisés Configuration réseau Définissez un poids précis pour améliorer le calcul des calories. - Activer le renouvellement automatique + Renouvellement auto À propos du poids Commande Passer à Premium @@ -958,7 +958,8 @@ Demande envoyée Votre demande de remboursement est en cours d’examen. - + Votre demande de remboursement a été examinée. + Votre remboursement a été traité. Nous n’avons pas pu effectuer votre remboursement. Veuillez réessayer ou contacter le support. Échec du remboursement Remboursement refusé diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml index 649c044..66ce3da 100644 --- a/app/src/main/res/values-it/strings.xml +++ b/app/src/main/res/values-it/strings.xml @@ -531,7 +531,7 @@ Spiacenti, non è possibile duplicare il WiFi Configurazione della rete Imposta un peso preciso per migliorare la precisione calorica. - Attivare il rinnovo automatico + Rinnovo auto Informazioni sul peso Ordine Imposta Premium @@ -944,7 +944,8 @@ Richiesta inviata La richiesta di rimborso è in fase di revisione. - + La tua richiesta di rimborso è stata esaminata. + Il rimborso è stato elaborato. Non è stato possibile completare il rimborso. Riprova o contatta l’assistenza. Rimborso non riuscito Rimborso rifiutato diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml index 47e0531..ac8259a 100644 --- a/app/src/main/res/values-zh-rCN/strings.xml +++ b/app/src/main/res/values-zh-rCN/strings.xml @@ -977,6 +977,8 @@ 您的退款申请已提交。 申请已提交 您的退款申请正在审核中。 + 您的退款申请已审核。 + 您的退款已处理。 退款无法完成,请重试或联系客服。 退款失败 退款被拒绝 diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index 69ee547..d5ae4e5 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -317,6 +317,7 @@ #1f4c4b4b #F8FFE4 #E7F9EF + #EBFAF2 #ECF3FB #0CC25F #FF7527 @@ -385,5 +386,6 @@ #0099CC #00B3A6 #FFB020 + #C8E092 #E5484D \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index c511465..75f53bd 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1028,6 +1028,8 @@ Your refund request has been submitted. Request Submitted Your refund request is being reviewed. + Your refund request has been reviewed. + Your refund has been processed. We couldn\'t complete your refund. Please contact support. Refund Failed Refund Declined