feat: 翻译
@@ -19,12 +19,6 @@ import android.view.animation.AnimationUtils
|
||||
import android.widget.FrameLayout
|
||||
import android.widget.ImageView
|
||||
import android.widget.TextView
|
||||
import com.coorchice.library.SuperTextView
|
||||
import com.netease.nim.uikit.common.util.sys.ScreenUtil
|
||||
import com.netease.nimlib.sdk.chatroom.model.ChatRoomMessage
|
||||
import com.netease.nimlib.sdk.chatroom.model.ChatRoomNotificationAttachment
|
||||
import com.opensource.svgaplayer.*
|
||||
import com.opensource.svgaplayer.SVGAParser.Companion.shareParser
|
||||
import com.chwl.app.R
|
||||
import com.chwl.app.avroom.activity.AVRoomActivity
|
||||
import com.chwl.app.avroom.helper.AnimHelper
|
||||
@@ -52,6 +46,12 @@ import com.chwl.core.user.bean.UserInfo
|
||||
import com.chwl.core.utils.extension.subAndReplaceDot
|
||||
import com.chwl.library.utils.ListUtils
|
||||
import com.chwl.library.utils.ResUtil
|
||||
import com.coorchice.library.SuperTextView
|
||||
import com.netease.nim.uikit.common.util.sys.ScreenUtil
|
||||
import com.netease.nimlib.sdk.chatroom.model.ChatRoomMessage
|
||||
import com.netease.nimlib.sdk.chatroom.model.ChatRoomNotificationAttachment
|
||||
import com.opensource.svgaplayer.*
|
||||
import com.opensource.svgaplayer.SVGAParser.Companion.shareParser
|
||||
import io.reactivex.Observable
|
||||
import io.reactivex.ObservableEmitter
|
||||
import io.reactivex.ObservableOnSubscribe
|
||||
@@ -749,22 +749,23 @@ class RoomEffectBoxView @JvmOverloads constructor(
|
||||
}
|
||||
}
|
||||
|
||||
//todo do 进场特效北京背景
|
||||
private fun memberInSvgaPath(level: Int): String {
|
||||
var path = ""
|
||||
if (level in 30..39) {
|
||||
path = "svga/svga_member_in_lv30.svga"
|
||||
path = "svga/experience_entre_effect_30.svga"
|
||||
} else if (level in 40..49) {
|
||||
path = "svga/svga_member_in_lv40.svga"
|
||||
path = "svga/experience_entre_effect_40.svga"
|
||||
} else if (level in 50..59) {
|
||||
path = "svga/svga_member_in_lv50.svga"
|
||||
path = "svga/experience_entre_effect_50.svga"
|
||||
} else if (level in 60..69) {
|
||||
path = "svga/svga_member_in_lv60.svga"
|
||||
path = "svga/experience_entre_effect_60.svga"
|
||||
} else if (level in 70..79) {
|
||||
path = "svga/svga_member_in_lv70.svga"
|
||||
path = "svga/experience_entre_effect_70.svga"
|
||||
} else if (level in 80..89) {
|
||||
path = "svga/svga_member_in_lv80.svga"
|
||||
path = "svga/experience_entre_effect_80.svga"
|
||||
} else if (level >= 90) {
|
||||
path = "svga/svga_member_in_lv90.svga"
|
||||
path = "svga/experience_entre_effect_90.svga"
|
||||
}
|
||||
return path
|
||||
}
|
||||
|
@@ -21,12 +21,6 @@ import android.widget.ImageView
|
||||
import android.widget.TextView
|
||||
import androidx.core.content.ContextCompat
|
||||
import androidx.core.text.HtmlCompat
|
||||
import com.coorchice.library.SuperTextView
|
||||
import com.netease.nim.uikit.common.util.sys.ScreenUtil
|
||||
import com.netease.nimlib.sdk.chatroom.model.ChatRoomMessage
|
||||
import com.netease.nimlib.sdk.chatroom.model.ChatRoomNotificationAttachment
|
||||
import com.opensource.svgaplayer.*
|
||||
import com.opensource.svgaplayer.SVGAParser.Companion.shareParser
|
||||
import com.chwl.app.R
|
||||
import com.chwl.app.avroom.activity.AVRoomActivity
|
||||
import com.chwl.app.avroom.bean.RoomPlayBean
|
||||
@@ -48,11 +42,24 @@ import com.chwl.app.utils.SpannableBuilder
|
||||
import com.chwl.core.XConstants
|
||||
import com.chwl.core.auth.AuthModel
|
||||
import com.chwl.core.decoration.car.bean.CarInfo
|
||||
import com.chwl.core.im.custom.bean.*
|
||||
import com.chwl.core.im.custom.bean.DatingAllNotifyAttachment
|
||||
import com.chwl.core.im.custom.bean.DatingAttachment
|
||||
import com.chwl.core.im.custom.bean.DrawGiftAttachment
|
||||
import com.chwl.core.im.custom.bean.FairyMsgAttachment
|
||||
import com.chwl.core.im.custom.bean.GiftCompoundAttachment
|
||||
import com.chwl.core.im.custom.bean.LevelUpNoticeAttachment
|
||||
import com.chwl.core.im.custom.bean.NotifyH5Attachment
|
||||
import com.chwl.core.im.custom.bean.NotifyH5Info
|
||||
import com.chwl.core.im.custom.bean.RoomBoxPrizeAttachment
|
||||
import com.chwl.core.im.custom.bean.RoomLuckySeaAttachment
|
||||
import com.chwl.core.im.custom.bean.RoomPKAttachment
|
||||
import com.chwl.core.im.custom.bean.RoomRankAttachment
|
||||
import com.chwl.core.im.custom.bean.RoomReceivedLuckyGiftAttachment
|
||||
import com.chwl.core.im.custom.bean.SingleRoomRankAttachment
|
||||
import com.chwl.core.im.custom.bean.TarotAttachment
|
||||
import com.chwl.core.manager.AvRoomDataManager
|
||||
import com.chwl.core.manager.IMNetEaseManager
|
||||
import com.chwl.core.manager.RoomEvent
|
||||
import com.chwl.core.monsterhunting.SimpleAnimationListener
|
||||
import com.chwl.core.room.bean.DatingNotifyInfo
|
||||
import com.chwl.core.super_admin.util.SuperAdminUtil
|
||||
import com.chwl.core.user.UserModel
|
||||
@@ -61,6 +68,16 @@ import com.chwl.core.utils.extension.subAndReplaceDot
|
||||
import com.chwl.library.utils.ListUtils
|
||||
import com.chwl.library.utils.ResUtil
|
||||
import com.chwl.library.utils.StringUtils
|
||||
import com.coorchice.library.SuperTextView
|
||||
import com.netease.nim.uikit.common.util.sys.ScreenUtil
|
||||
import com.netease.nimlib.sdk.chatroom.model.ChatRoomMessage
|
||||
import com.netease.nimlib.sdk.chatroom.model.ChatRoomNotificationAttachment
|
||||
import com.opensource.svgaplayer.SVGADrawable
|
||||
import com.opensource.svgaplayer.SVGADynamicEntity
|
||||
import com.opensource.svgaplayer.SVGAImageView
|
||||
import com.opensource.svgaplayer.SVGAParser
|
||||
import com.opensource.svgaplayer.SVGAParser.Companion.shareParser
|
||||
import com.opensource.svgaplayer.SVGAVideoEntity
|
||||
import io.reactivex.Observable
|
||||
import io.reactivex.ObservableEmitter
|
||||
import io.reactivex.ObservableOnSubscribe
|
||||
@@ -1450,22 +1467,23 @@ class RoomEffectView @JvmOverloads constructor(
|
||||
}
|
||||
}
|
||||
|
||||
//todo do 进场特效北京背景
|
||||
private fun memberInSvgaPath(level: Int): String {
|
||||
var path = ""
|
||||
if (level in 30..39) {
|
||||
path = "svga/svga_member_in_lv30.svga"
|
||||
path = "svga/experience_entre_effect_30.svga"
|
||||
} else if (level in 40..49) {
|
||||
path = "svga/svga_member_in_lv40.svga"
|
||||
path = "svga/experience_entre_effect_40.svga"
|
||||
} else if (level in 50..59) {
|
||||
path = "svga/svga_member_in_lv50.svga"
|
||||
path = "svga/experience_entre_effect_50.svga"
|
||||
} else if (level in 60..69) {
|
||||
path = "svga/svga_member_in_lv60.svga"
|
||||
path = "svga/experience_entre_effect_60.svga"
|
||||
} else if (level in 70..79) {
|
||||
path = "svga/svga_member_in_lv70.svga"
|
||||
path = "svga/experience_entre_effect_70.svga"
|
||||
} else if (level in 80..89) {
|
||||
path = "svga/svga_member_in_lv80.svga"
|
||||
path = "svga/experience_entre_effect_80.svga"
|
||||
} else if (level >= 90) {
|
||||
path = "svga/svga_member_in_lv90.svga"
|
||||
path = "svga/experience_entre_effect_90.svga"
|
||||
}
|
||||
return path
|
||||
}
|
||||
|
9
app/src/main/java/com/chwl/app/constants/AnyType.java
Normal file
@@ -0,0 +1,9 @@
|
||||
package com.chwl.app.constants;
|
||||
|
||||
public class AnyType {
|
||||
|
||||
public @interface ObtainWay {
|
||||
int ACT = 2;
|
||||
int Def = 1;
|
||||
}
|
||||
}
|
@@ -4,6 +4,7 @@ import android.view.Gravity
|
||||
import com.chwl.app.R
|
||||
import com.chwl.app.bindadapter.BaseBindingAdapter
|
||||
import com.chwl.app.bindadapter.BaseBindingViewHolder
|
||||
import com.chwl.app.constants.AnyType
|
||||
import com.chwl.app.databinding.ItemDressUpLayoutBinding
|
||||
import com.chwl.app.decoration.ui.activity.DressUpTabActivity
|
||||
import com.chwl.app.decoration.util.DressUpUtil
|
||||
@@ -15,6 +16,8 @@ import com.example.lib_utils.ktx.getString
|
||||
|
||||
class DressUpAdapter : BaseBindingAdapter<ItemDressUpLayoutBinding, DressUpInfo>() {
|
||||
|
||||
// val myVipLevel = UserModel.get().cacheLoginUserInfo?.userVipInfoVO?.vipLevel?:-1
|
||||
|
||||
override fun convert(
|
||||
helper: BaseBindingViewHolder<ItemDressUpLayoutBinding>,
|
||||
item: DressUpInfo
|
||||
@@ -49,8 +52,16 @@ class DressUpAdapter : BaseBindingAdapter<ItemDressUpLayoutBinding, DressUpInfo>
|
||||
DressUpUtil.setTextPrice(binding.price,item)
|
||||
binding.price.setVis(!item.isMy)
|
||||
|
||||
|
||||
binding.discount.text = item.discount.toString()
|
||||
//1-普通 2-活动
|
||||
if (item.obtainWay == AnyType.ObtainWay.ACT) {
|
||||
binding.discount.text = R.string.obtainWayActionItem.getString()
|
||||
} else {
|
||||
if (item.vipLimit > 0) {
|
||||
binding.discount.text = R.string.vipLimit.getString(item.vipLimit)
|
||||
} else {
|
||||
binding.discount.text = R.string.vipDiscount.getString(item.vipLevel,"${item.discount}%")
|
||||
}
|
||||
}
|
||||
binding.discount.setVis(!item.isMy)
|
||||
|
||||
|
||||
|
@@ -58,6 +58,7 @@ class DressUpUtil {
|
||||
outData.effectType = inData.effectType
|
||||
outData.dressType = inData.dressType
|
||||
outData.vipLimit = inData.vipLimit
|
||||
outData.vipLevel = inData.vipLevel
|
||||
outData.id = inData.dressId
|
||||
outData.dressId = inData.id
|
||||
outData.obtainWay = inData.obtainWay
|
||||
@@ -218,7 +219,8 @@ class DressUpUtil {
|
||||
textStyle = Typeface.NORMAL
|
||||
).setTextStyle(
|
||||
text = item.originalPrice,
|
||||
textColor = R.color.color_d9e7f7.getColor(),
|
||||
textColor = R.color.color_d9e7f7_50.getColor(),
|
||||
textStyle = Typeface.NORMAL,
|
||||
delLine = true
|
||||
).apply()
|
||||
textView.setVis(true)
|
||||
|
@@ -107,15 +107,15 @@ class HomeRoomAdapter : BaseMultiItemQuickAdapter<HomeRoomInfo, BaseViewHolder>
|
||||
val userAdapter = micUserRecyclerView.adapter as HomeRoomUserAdapter
|
||||
userAdapter.setNewData(item.micUsers)
|
||||
|
||||
//todo 小时榜 背景需要更换
|
||||
|
||||
val topView = helper.getView<ImageView>(R.id.iv_top)
|
||||
topView.visibility = View.VISIBLE
|
||||
if (item.hourTop == 1) {
|
||||
topView.setImageResource(R.drawable.home_room_bg_hour_top)
|
||||
topView.setImageResource(R.drawable.ic_home_room_bg_top_1)
|
||||
} else if (item.hourTop == 2) {
|
||||
topView.setImageResource(R.drawable.home_room_bg_week_top)
|
||||
topView.setImageResource(R.drawable.ic_home_room_bg_top_2)
|
||||
}else if (item.hourTop == 3) {
|
||||
topView.setImageResource(R.drawable.home_room_bg_week_top)
|
||||
topView.setImageResource(R.drawable.ic_home_room_bg_top_3)
|
||||
} else {
|
||||
topView.visibility = View.INVISIBLE
|
||||
}
|
||||
@@ -155,16 +155,17 @@ class HomeRoomAdapter : BaseMultiItemQuickAdapter<HomeRoomInfo, BaseViewHolder>
|
||||
}
|
||||
}
|
||||
|
||||
//todo do 标签
|
||||
// 1 = 热门 2=客服
|
||||
val title = helper.getView<DrawableTextView>(R.id.tv_room_title)
|
||||
if (item.homeRoomType == 0) {
|
||||
title.setDrawableEmpty(null,null,R.drawable.transparent_draw.getDrawable(),null)
|
||||
}else if (item.homeRoomType == 1) {
|
||||
title.setDrawableEmpty(null,null,R.drawable.transparent_draw.getDrawable(),null)
|
||||
title.setDrawableEmpty(null,null,R.drawable.ic_home_room_icon_hot.getDrawable(),null)
|
||||
}else if (item.homeRoomType == 2) {
|
||||
title.setDrawableEmpty(null,null,R.drawable.transparent_draw.getDrawable(),null)
|
||||
title.setDrawableEmpty(null,null,R.drawable.ic_home_room_icon_service.getDrawable(),null)
|
||||
}
|
||||
|
||||
|
||||
} else {
|
||||
|
||||
if (item.bannerVoList.isVerify()){
|
||||
|
@@ -720,20 +720,24 @@ public class UserInfoDialog extends AppCompatDialog implements View.OnClickListe
|
||||
ivAvatarBgMask.setVisibility(View.INVISIBLE);
|
||||
ivAvatarBg.setVisibility(View.INVISIBLE);
|
||||
|
||||
VipUtil.INSTANCE.setUserBg(userInfo.getInfoCardVo(),mUserCardWearLayout, callBack -> {
|
||||
if (callBack) {
|
||||
ivAvatarBgMask.setVisibility(View.INVISIBLE);
|
||||
ivAvatarBg.setVisibility(View.INVISIBLE);
|
||||
} else {
|
||||
if (avatarBg == null || !avatarBg.equals(userInfo.getAvatar())) {
|
||||
avatarBg = userInfo.getAvatar();
|
||||
ImageLoadUtils.loadImageWithBlur(context, userInfo.getAvatar(), ivAvatarBg, 10, 1);
|
||||
ivAvatarBgMask.setVisibility(View.VISIBLE);
|
||||
ivAvatarBg.setVisibility(View.VISIBLE);
|
||||
if (userInfo.getInfoCardVo() != null) {
|
||||
VipUtil.INSTANCE.setUserBg(userInfo.getInfoCardVo(), mUserCardWearLayout, callBack -> {
|
||||
if (callBack) {
|
||||
ivAvatarBgMask.setVisibility(View.INVISIBLE);
|
||||
ivAvatarBg.setVisibility(View.INVISIBLE);
|
||||
} else {
|
||||
if (avatarBg == null || !avatarBg.equals(userInfo.getAvatar())) {
|
||||
avatarBg = userInfo.getAvatar();
|
||||
ImageLoadUtils.loadImageWithBlur(context, userInfo.getAvatar(), ivAvatarBg, 10, 1);
|
||||
ivAvatarBgMask.setVisibility(View.VISIBLE);
|
||||
ivAvatarBg.setVisibility(View.VISIBLE);
|
||||
}
|
||||
}
|
||||
}
|
||||
return null;
|
||||
});
|
||||
return null;
|
||||
});
|
||||
} else {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
BIN
app/src/main/res/drawable-ar-xhdpi/ic_home_room_bg_top_1.png
Normal file
After Width: | Height: | Size: 70 KiB |
BIN
app/src/main/res/drawable-ar-xhdpi/ic_home_room_bg_top_2.png
Normal file
After Width: | Height: | Size: 62 KiB |
BIN
app/src/main/res/drawable-ar-xhdpi/ic_home_room_bg_top_3.png
Normal file
After Width: | Height: | Size: 41 KiB |
BIN
app/src/main/res/drawable-xhdpi/ic_dress_up_empty.png
Normal file
After Width: | Height: | Size: 8.9 KiB |
BIN
app/src/main/res/drawable-xhdpi/ic_home_room_bg_top_1.png
Normal file
After Width: | Height: | Size: 69 KiB |
BIN
app/src/main/res/drawable-xhdpi/ic_home_room_bg_top_2.png
Normal file
After Width: | Height: | Size: 62 KiB |
BIN
app/src/main/res/drawable-xhdpi/ic_home_room_bg_top_3.png
Normal file
After Width: | Height: | Size: 41 KiB |
BIN
app/src/main/res/drawable-xhdpi/ic_home_room_icon_hot.png
Normal file
After Width: | Height: | Size: 1.4 KiB |
BIN
app/src/main/res/drawable-xhdpi/ic_home_room_icon_service.png
Normal file
After Width: | Height: | Size: 2.0 KiB |
@@ -120,7 +120,6 @@
|
||||
android:drawablePadding="4dp"
|
||||
android:gravity="center"
|
||||
android:textColor="#f8ce1f"
|
||||
android:textStyle="bold"
|
||||
app:autoSizeStepGranularity="@dimen/picker_default_text_size"
|
||||
app:dt_drawableLeftHeight="25dp"
|
||||
app:dt_drawableLeftSrc="@drawable/ic_coin_84"
|
||||
|
@@ -65,7 +65,7 @@
|
||||
android:gravity="center"
|
||||
android:paddingBottom="7dp"
|
||||
android:textColor="#f8ce1f"
|
||||
android:textSize="15sp"
|
||||
android:textSize="12sp"
|
||||
android:visibility="gone"
|
||||
app:dt_drawableLeftHeight="18dp"
|
||||
app:dt_drawableLeftSrc="@drawable/ic_coin_84"
|
||||
@@ -110,7 +110,7 @@
|
||||
app:layout_constraintEnd_toEndOf="@id/picBg"
|
||||
app:layout_constraintStart_toStartOf="@id/picBg"
|
||||
app:layout_constraintTop_toTopOf="@id/picBg"
|
||||
tools:background="@drawable/icon_room_bg_gif_type"
|
||||
tools:background="@drawable/ic_dress_up_empty"
|
||||
tools:visibility="visible" />
|
||||
|
||||
<ImageView
|
||||
|
@@ -5337,11 +5337,18 @@
|
||||
<string name="Purchases_hint_info">لا يمكنك تحميل أكثر من 6 صور في المرة الواحدة كخلفية مخصصة\nبمجرد إنشاء الخلفية، لا يمكن إلغاؤها\nسوف نراجع الخلفية التي تم تحميلها خلال 24 ساعة\nإذا تم رفض الخلفية، فسوف تتلقى استردادًا للعملات</string>
|
||||
<string name="chat_limit_tip_title">أنت والآخر لستما صديقين، لذا لا يمكنكما الدردشة بشكل خاص</string>
|
||||
<string name="chat_limit_tip1">كن في اي بي%s بدون أي علاقة، يمكنك الدردشة مع المستخدمين بشكل خاص مجانًا كل يوم، جربه؟</string>
|
||||
<string name="chat_limit_tip2">كن في اي بي%s، يمكنك الحصول على %s حصص كل يوم، والدردشة بشكل خاص مع المستخدمين مجانًا، جرب ذلك؟</string>
|
||||
<string name="chat_limit_tip2">كن في اي بي%2$s، يمكنك الحصول على %1$s حصص كل يوم، والدردشة بشكل خاص مع المستخدمين مجانًا، جرب ذلك؟</string>
|
||||
<string name="chat_limit_tip3">لقد قمت بالدردشة مع 1000 شخص اليوم، يرجى المحاولة مرة أخرى غدًا.</string>
|
||||
<string name="getsVip">%sكن في اي بي</string>
|
||||
<string name="s_sDays">%s/%s يوم</string>
|
||||
<string name="s_sDays">%1$s/%2$s يوم</string>
|
||||
<string name="sDays">%s يوم</string>
|
||||
<string name="unDay"><1 يوم</string>
|
||||
<string name="s_sDays_s">%s/%s يوم %s</string>
|
||||
<string name="Not_used">غير مستخدم</string>
|
||||
<string name="userInfoBg">الصفحة الرئيسية</string>
|
||||
<string name="My_Dress">ملابسي</string>
|
||||
<string name="limit">محدود</string>
|
||||
<string name="vipLimit">حصريًا لفي اي بي%s</string>
|
||||
<string name="obtainWayAction">احصل عليها فقط في الحدث</string>
|
||||
<string name="obtainWayActionItem">احصل عليها فقط في الحدث، لا يمكن الشراء</string>
|
||||
<string name="s_sDays_s">"%2$s/%1$s يوم %3$s "</string>
|
||||
</resources>
|
@@ -5133,11 +5133,18 @@ Toplam imza alın, ilgili ödülü alın
|
||||
<string name="Purchases_hint_info">Özel arka plan olarak aynı anda en fazla 6 resim yükleyebilirsiniz.\nArka plan oluşturulduktan sonra iptal edilemez.\nYüklenen arka planı 24 saat içinde inceleyeceğiz.\nArka plan reddedilirse, jeton iadesi alacaksınız.</string>
|
||||
<string name="chat_limit_tip_title">Sen ve diğerleri arkadaş değilsiniz, bu yüzden özel sohbet edemezsiniz.</string>
|
||||
<string name="chat_limit_tip1">Hiçbir ilişkiniz olmadan %s olun, kullanıcılarla her gün ücretsiz olarak özel olarak sohbet edebilirsiniz, dener misiniz?</string>
|
||||
<string name="chat_limit_tip2">%s olun, her gün %s kota alabilirsiniz, kullanıcılarla özel olarak ücretsiz sohbet edebilirsiniz, dener misiniz?</string>
|
||||
<string name="chat_limit_tip2">%1$s olun, her gün %2$s kota alabilirsiniz, kullanıcılarla özel olarak ücretsiz sohbet edebilirsiniz, dener misiniz?</string>
|
||||
<string name="chat_limit_tip3">Bugün 1000 kişiyle sohbet ettiniz, lütfen yarın tekrar deneyin.</string>
|
||||
<string name="getsVip">VIP%s olun</string>
|
||||
<string name="s_sDays">%s/%s gün</string>
|
||||
<string name="s_sDays">%1$s/%2$s gün</string>
|
||||
<string name="sDays">%s gün</string>
|
||||
<string name="unDay"><1 gün</string>
|
||||
<string name="s_sDays_s">%s/%s gün %s</string>
|
||||
<string name="Not_used">Kullanılmadı</string>
|
||||
<string name="userInfoBg">Ana Sayfa</string>
|
||||
<string name="My_Dress">Benim Elbisem</string>
|
||||
<string name="limit">Sınırlı</string>
|
||||
<string name="vipLimit">VIP\'lere özel%s</string>
|
||||
<string name="obtainWayAction">Yalnızca Etkinliğe Göre Alın</string>
|
||||
<string name="obtainWayActionItem">Yalnızca etkinliğe göre alın, satın alınamaz.</string>
|
||||
<string name="s_sDays_s">%1$s/%2$sgün %3$s</string>
|
||||
</resources>
|
||||
|
@@ -5280,12 +5280,19 @@
|
||||
<string name="Purchases_hint_info">您一次最多只能上传 6 张图片作为自定义背景。\n背景一旦创建,就无法取消。\n我们将在 24 小时内审核上传的背景。\n如果背景被拒绝,您将收到金币退款。</string>
|
||||
<string name="chat_limit_tip_title">你和對方不是朋友,所以不能私聊。</string>
|
||||
<string name="chat_limit_tip1">成為%s,不用任何關係,每天都可以免費與用戶私聊,試試看嗎?</string>
|
||||
<string name="chat_limit_tip2">成為%s,每天可獲得%s個配額,免費與用戶私聊,試試看嗎?</string>
|
||||
<string name="chat_limit_tip2">成為%1$s,每天可獲得%2$s個配額,免費與用戶私聊,試試看嗎?</string>
|
||||
<string name="chat_limit_tip3">你今天已經與1000人聊天,請明天再試。</string>
|
||||
<string name="getsVip">成為VIP%s</string>
|
||||
<string name="s_sDays">%s/%s天</string>
|
||||
<string name="s_sDays">%1$s/%2$s天</string>
|
||||
<string name="sDays">%s天</string>
|
||||
<string name="unDay"><1天</string>
|
||||
<string name="s_sDays_s">%s/%s天 %s</string>
|
||||
<string name="Not_used">不使用</string>
|
||||
<string name="userInfoBg">個人主頁</string>
|
||||
<string name="My_Dress">我的裝扮</string>
|
||||
<string name="limit">限時</string>
|
||||
<string name="vipLimit">VIP%s用戶獨享</string>
|
||||
<string name="obtainWayAction">僅參與活動獲得</string>
|
||||
<string name="obtainWayActionItem">僅參與活動獲得,無法購買</string>
|
||||
<string name="s_sDays_s">%1$s/%2$s天 %3$s</string>
|
||||
|
||||
</resources>
|
@@ -770,5 +770,6 @@
|
||||
<color name="color_ff9741">#ff9741</color>
|
||||
<color name="color_ff5656">#ff5656</color>
|
||||
<color name="color_d9e7f7">#d9e7f7</color>
|
||||
<color name="color_d9e7f7_50">#80D9E7F7</color>
|
||||
|
||||
</resources>
|
||||
|
@@ -5342,22 +5342,24 @@ You cannot join again within 24 hours after leaving</string>
|
||||
<string name="Purchases_hint_info">You can only upload up to 6 images at a time as a custom background.\nOnce the background is created, it cannot be canceled.\nWe will review the uploaded background within 24 hours.\nIf the background is rejected, you will receive a refund of coins.</string>
|
||||
|
||||
<string name="chat_limit_tip1">Be %s without any relationship, you can chat with users privately for free every day,try it?</string>
|
||||
<string name="chat_limit_tip2">Be %s, you can get %s quotas every day, chat privately with users for free, try it?</string>
|
||||
<string name="chat_limit_tip2">Be %1$s, you can get %2$s quotas every day, chat privately with users for free, try it?</string>
|
||||
<string name="chat_limit_tip3">You have chatted with 1,000 people today, please try again tomorrow.</string>
|
||||
<string name="getsVip">Be VIP%s</string>
|
||||
|
||||
<string name="s_sDays">%s/%sDays</string>
|
||||
<string name="s_sDays">%1$s/%2$sDays</string>
|
||||
<string name="sDays">%sDays</string>
|
||||
<string name="unDay"><1Days</string>
|
||||
|
||||
|
||||
<string name="Not_used">Not used</string>
|
||||
<string name="userInfoBg">userInfoBg</string>
|
||||
<string name="userInfoBg">Homepage</string>
|
||||
<string name="My_Dress">My Dress</string>
|
||||
<string name="limit">limit</string>
|
||||
<string name="vipLimit">VIP限制 %s</string>
|
||||
<string name="obtainWayAction">活动获取 不可购买</string>
|
||||
<string name="s_sDays_s">%s/%sDays %s</string>
|
||||
<string name="limit">Limited</string>
|
||||
<string name="vipLimit">Exclusive for VIP%s</string>
|
||||
<string name="vipDiscount">VIP%1$s-%2$s</string>
|
||||
<string name="obtainWayAction">Only Get by Event</string>
|
||||
<string name="obtainWayActionItem">Only get by event, cannot buy.</string>
|
||||
<string name="s_sDays_s">%1$s/%2$sD %3$s</string>
|
||||
|
||||
</resources>
|
||||
|
||||
|
@@ -11,6 +11,7 @@ import com.chwl.library.utils.SizeUtils
|
||||
import com.example.lib_utils.UiUtils.isRtl
|
||||
import com.example.lib_utils.ktx.getString
|
||||
import com.hjq.toast.ToastUtils
|
||||
import java.util.Locale
|
||||
|
||||
|
||||
fun View.setMargin(start:Int?=null,top:Int?=null,end:Int?=null,bottom:Int?=null,isDP:Boolean = true) {
|
||||
@@ -134,7 +135,7 @@ fun Double?.toNumString(byte:Int = 2) : String {
|
||||
if (floatNum == 0.0) {
|
||||
return intNum.toString()
|
||||
} else {
|
||||
val format = String.format("%.${byte}f", this)
|
||||
val format = String.format(Locale.ENGLISH,"%.${byte}f", this)
|
||||
if (format.endsWith(".00")){
|
||||
return intNum.toString()
|
||||
}else if (format.contains(".") && format.endsWith("0")){
|
||||
|
154
mode.json
@@ -2,52 +2,112 @@
|
||||
"code": 200,
|
||||
"message": "success",
|
||||
"data": {
|
||||
"totalPage": 1,
|
||||
"nameplateList": [
|
||||
{
|
||||
"id": 406,
|
||||
"uid": 3224,
|
||||
"nameplateId": 101,
|
||||
"isCustomWord": true,
|
||||
"word": " 555",
|
||||
"remark": " 555",
|
||||
"expireTime": 1738663248000,
|
||||
"createTime": 1731319248000,
|
||||
"updateTime": 1731319248000,
|
||||
"nameplateName": " 555",
|
||||
"nameplateImage": "https://image.pekolive.com/11094f2f00fb491f963132463bab97ec.png",
|
||||
"isExpired": false,
|
||||
"expireDays": 74,
|
||||
"isUsing": true,
|
||||
"iconPic": "https://image.pekolive.com/gonghuizhangmingpaikaobei.png",
|
||||
"fixedWord": " 555",
|
||||
"nameplateType": "1",
|
||||
"dressShopId": 33,
|
||||
"dressPrice": 1000,
|
||||
"discountPrice": 950.00,
|
||||
"vipLevel": 6,
|
||||
"discount": 95,
|
||||
"dressDay": 9
|
||||
},
|
||||
{
|
||||
"id": 407,
|
||||
"uid": 3224,
|
||||
"nameplateId": 100,
|
||||
"isCustomWord": false,
|
||||
"word": " ",
|
||||
"remark": " ",
|
||||
"expireTime": 1733220061000,
|
||||
"createTime": 1731319261000,
|
||||
"updateTime": 1731319261000,
|
||||
"nameplateName": "女神",
|
||||
"nameplateImage": "https://image.pekolive.com/guanfangzhuli-bajisitan.png",
|
||||
"isExpired": false,
|
||||
"expireDays": 11,
|
||||
"isUsing": false,
|
||||
"iconPic": "https://image.pekolive.com/guanfangzhuli-bajisitan.png",
|
||||
"nameplateType": "1"
|
||||
}
|
||||
]
|
||||
"uid": 3200,
|
||||
"erbanNo": 991,
|
||||
"birth": 1038326400000,
|
||||
"phone": "04****6556",
|
||||
"phoneAreaCode": "61",
|
||||
"nick": "打小就爱哭",
|
||||
"defUser": 1,
|
||||
"gender": 1,
|
||||
"avatar": "https://image.pekolive.com/6f22d3ae-3575-4719-87e6-8c6d95026124.jpg",
|
||||
"region": "沙特阿拉伯",
|
||||
"userDesc": "",
|
||||
"followNum": 1,
|
||||
"fansNum": 4,
|
||||
"hasPrettyErbanNo": true,
|
||||
"hasRegPacket": false,
|
||||
"userLevelVo": {
|
||||
"experAmount": 22898613,
|
||||
"charmAmount": 178418802,
|
||||
"experUrl": "https://image.pekolive.com/Wealth_43.png",
|
||||
"charmUrl": "https://image.pekolive.com/Charm_51.png",
|
||||
"experLevelName": "Lv43",
|
||||
"charmLevelName": "Lv51",
|
||||
"experLevelGrp": "",
|
||||
"charmLevelGrp": "",
|
||||
"experLevelSeq": 43,
|
||||
"charmLevelSeq": 51
|
||||
},
|
||||
"isCustomWord": false,
|
||||
"newUser": false,
|
||||
"userHeadwear": {
|
||||
"uid": 3200,
|
||||
"headwearId": 194,
|
||||
"headwearName": "VIP4頭飾",
|
||||
"used": true,
|
||||
"buyTime": 1731581298000,
|
||||
"expireTime": 1732852800000,
|
||||
"expireDays": 7,
|
||||
"status": 1,
|
||||
"pic": "https://image.pekolive.com/Vip4headdress.png",
|
||||
"effect": "https://image.pekolive.com/Vip4headdress.svga",
|
||||
"price": 0.00,
|
||||
"renewPrice": 0.00,
|
||||
"days": 15,
|
||||
"comeFrom": 3,
|
||||
"labelType": 0,
|
||||
"limitDesc": "",
|
||||
"originalPrice": 10000,
|
||||
"redirectLink": "",
|
||||
"type": 1
|
||||
},
|
||||
"isBindPhone": true,
|
||||
"isBindPasswd": true,
|
||||
"isBindPaymentPwd": false,
|
||||
"isCertified": false,
|
||||
"isBindApple": false,
|
||||
"bindType": 3,
|
||||
"userInfoSkillVo": {
|
||||
"liveTag": false,
|
||||
"liveSkillVoList": []
|
||||
},
|
||||
"platformRole": 0,
|
||||
"privatePhoto": [],
|
||||
"registerDay": 95,
|
||||
"createTime": 1724299157000,
|
||||
"isFirstCharge": false,
|
||||
"isReview": false,
|
||||
"userVipInfoVO": {
|
||||
"vipIcon": "https://image.pekolive.com/v6.png",
|
||||
"vipLevel": 6,
|
||||
"vipName": "VIP6",
|
||||
"vipLogo": "https://image.pekolive.com/v6.mp4",
|
||||
"userCardBG": "https://image.molistar.xyz/V6_user_bg.png\n\n",
|
||||
"nameplateId": 6,
|
||||
"nameplateUrl": "https://image.molistar.xyz/VIP6_nameplate.png",
|
||||
"micCircle": "https://image.molistar.xyz/v6_mic_cycle.svga",
|
||||
"micNickColour": "#A5FFDC",
|
||||
"friendNickColour": "#A5FFDC",
|
||||
"preventKick": false,
|
||||
"enterHide": false,
|
||||
"preventTrace": false,
|
||||
"preventFollow": false,
|
||||
"uploadGifAvatar": false,
|
||||
"privateChatLimit": false,
|
||||
"enterRoomEffects": "https://image.molistar.xyz/v6_enter_effect.svga",
|
||||
"expireTime": 1732680000000
|
||||
},
|
||||
"userInfoCardPic": "https://image.molistar.xyz/v6_info_card.mp4",
|
||||
"micCircle": "https://image.molistar.xyz/v6_mic_cycle.svga",
|
||||
"micNickColor": "#A5FFDC",
|
||||
"audioCard": {
|
||||
"uid": 3200,
|
||||
"status": 0
|
||||
},
|
||||
"labels": [],
|
||||
"androidBubbleUrl": "https://image.molistar.xyz/v5_chatbubble_android.png",
|
||||
"iosBubbleUrl": "https://image.molistar.xyz/v5_chatbubble_ios.png",
|
||||
"fromSayHelloChannel": false,
|
||||
"showLimitCharge": false,
|
||||
"banAccount": false,
|
||||
"isRechargeUser": false,
|
||||
"inMic": false,
|
||||
"partitionId": 2,
|
||||
"infoCardVo": {
|
||||
"effectType": 0,
|
||||
"effect": "https://image.molistar.xyz/v6_info_card.mp4"
|
||||
}
|
||||
},
|
||||
"timestamp": 1732272347736
|
||||
"timestamp": 1732517418215
|
||||
}
|
||||
|