fix: UI走查

This commit is contained in:
eggmanQQQ
2024-11-12 10:29:18 +08:00
parent 83fb1dc632
commit f1b92a291c
19 changed files with 271 additions and 161 deletions

View File

@@ -62,7 +62,7 @@ class RoomBgSetDialog : BaseDialogFragment<DialogRoomBgSetBinding>() {
mAdapter = RoomBgAdapter()
mAdapter.setNewData(mutableListOf())
mAdapter.setEmptyView(EmptyViewHelper.createEmptyTextViewHeight(context, "无数据"))
mAdapter.setEmptyView(EmptyViewHelper.createEmptyTextViewHeight(context, R.string.empty_data.getString()))
binding.rvList.layoutManager = LinearLayoutManager(context, RecyclerView.HORIZONTAL, false)
binding.rvList.adapter = mAdapter
@@ -72,7 +72,7 @@ class RoomBgSetDialog : BaseDialogFragment<DialogRoomBgSetBinding>() {
when (view.id) {
R.id.statusPlay, R.id.statusBuy -> {
data?.let {
if (data.status != RoomBgInfo.Status.S_REJECT) {
if (data.status != RoomBgInfo.Status.S_REJECT && data.status != RoomBgInfo.Status.S_REVIEW) {
showPreViewDialog(null, data, true)
}
}
@@ -111,7 +111,7 @@ class RoomBgSetDialog : BaseDialogFragment<DialogRoomBgSetBinding>() {
binding.btnMore.click {
val dialogManager = DialogManager(context)
dialogManager.showOkDialog(R.string.Purchases_hint_info.getString())
dialogManager.showOkCancelDialog(R.string.tip_tips.getString(),R.string.Purchases_hint_info.getString(),R.string.ok.getString(),null,true,null)
val window = dialogManager?.dialog?.window
val tip = window?.findViewById<TextView>(R.id.message)
tip?.gravity = Gravity.START
@@ -252,7 +252,7 @@ class RoomBgSetDialog : BaseDialogFragment<DialogRoomBgSetBinding>() {
.subscribe()
}
} else {
if (data.status == RoomBgInfo.Status.S_REJECT) return // 拒審只能刪除
if (data.status == RoomBgInfo.Status.S_REJECT || data.status == RoomBgInfo.Status.S_REVIEW) return // 拒審只能刪除
showPreViewDialog(null, data, true)
}
}
@@ -263,6 +263,8 @@ class RoomBgSetDialog : BaseDialogFragment<DialogRoomBgSetBinding>() {
binding.btnFree.setTextColor(if (type == RoomBgInfo.Type.T_FREE) R.color.white.getColor() else R.color.white_tran_60.getColor())
binding.btnPay.setTextColor(if (type == RoomBgInfo.Type.T_PAY) R.color.white.getColor() else R.color.white_tran_60.getColor())
binding.btnCustom.setTextColor(if (type == RoomBgInfo.Type.T_CUSTOM) R.color.white.getColor() else R.color.white_tran_60.getColor())
val text = mAdapter.emptyView?.findViewById<TextView>(R.id.tv_hint)
text?.text = R.string.empty_data.getString()
mSelectType = type
when (type) {
RoomBgInfo.Type.T_FREE -> {
@@ -275,6 +277,7 @@ class RoomBgSetDialog : BaseDialogFragment<DialogRoomBgSetBinding>() {
RoomBgInfo.Type.T_CUSTOM -> {
mAdapter.setNewData(mDataCustom)
text?.text = R.string.empty_customize_bg.getString()
binding.btnMore.setVis(true)
binding.btnCreate.setVis(true)
}
@@ -308,16 +311,19 @@ class RoomBgSetDialog : BaseDialogFragment<DialogRoomBgSetBinding>() {
}
private fun showPreViewDialog(file: File?, data:RoomBgInfoItem, buy: Boolean) {
RoomBgPreviewDialog().apply {
mFile = file
mRoomBgInfoItem = data
isBuy = buy
mCallBack = object : RoomBgPreviewDialog.CallBack {
override fun onSuccess() {
getData()
context?.let {
RoomBgPreviewDialog().apply {
mFile = file
mRoomBgInfoItem = data
isBuy = buy
mCallBack = object : RoomBgPreviewDialog.CallBack {
override fun onSuccess() {
getData()
}
}
}
}.show(requireContext())
}.show(it)
}
}

View File

@@ -24,7 +24,6 @@ import com.chwl.core.room.bean.RoomIcon
import com.chwl.core.room.bean.RoomInfo
import com.chwl.core.room.bean.RoomModeType
import com.chwl.core.room.core.RoomDataService
import com.chwl.core.room.game.GameModel
import com.chwl.core.room.game.GameModel.getGameList
import com.chwl.core.room.game.bean.BaiShunGameConfig
import com.chwl.core.room.game.bean.GameInfo
@@ -38,9 +37,8 @@ import com.chwl.library.utils.SingleToastUtil
import com.example.lib_utils.ktx.asLifecycle
import com.google.android.material.bottomsheet.BottomSheetDialogFragment
import com.google.gson.Gson
import com.unity3d.splash.services.core.lifecycle.LifecycleEvent
import io.reactivex.Single
import io.reactivex.disposables.CompositeDisposable
class RoomGameListDialog :
BottomSheetDialogFragment(), LifecycleObserver {
private var binding: RoomGameplayDialogBinding? = null
@@ -343,7 +341,9 @@ class RoomGameListDialog :
}
private fun jumpFindLove() {
GoldBoxHelper.handleBoxClick(requireContext())
context?.let {
GoldBoxHelper.handleBoxClick(it)
}
}
override fun onDestroy() {

View File

@@ -10,7 +10,6 @@ import androidx.core.view.isVisible
import androidx.lifecycle.Lifecycle
import androidx.lifecycle.LifecycleEventObserver
import androidx.lifecycle.LifecycleOwner
import androidx.recyclerview.widget.GridLayoutManager
import androidx.recyclerview.widget.RecyclerView
import com.chwl.app.R
import com.chwl.app.avroom.activity.CreatePKActivity
@@ -218,7 +217,7 @@ class RoomGameplayDialog : BottomSheetDialogFragment() {
val url = data.skipContent
if (data.skipType == 3 && !url.isNullOrEmpty()) {
if (data.showType == 2) {
RoomWebDialogActivity.start(requireContext(), url, false)
RoomWebDialogActivity.start(context, url, false)
} else {
CommonWebViewActivity.start(context, url)
}

View File

@@ -594,19 +594,21 @@ public abstract class BaseFragment extends RxFragment implements KeyEvent.Callba
} else if (activity instanceof BaseActivity) {
return ((BaseActivity) activity).getDialogManager();
}
Activity topActivity = App.gStack.getTopActivity();
if (dialogManager == null && topActivity != null) {
dialogManager = new DialogManager(topActivity);
}
Context fragmentContext = requireContext();
if (dialogManager == null) {
dialogManager = new DialogManager(fragmentContext);
}
} catch (Exception e) {
e.printStackTrace();
}
Context fragmentContext = requireContext();
if (dialogManager == null) {
dialogManager = new DialogManager(fragmentContext);
}
Activity topActivity = App.gStack.getTopActivity();
if (dialogManager == null && topActivity != null) {
dialogManager = new DialogManager(topActivity);
}
return dialogManager;
}

View File

@@ -24,15 +24,15 @@ import android.widget.TextView;
import androidx.appcompat.app.AlertDialog;
import com.makeramen.roundedimageview.RoundedImageView;
import com.netease.nim.uikit.common.util.string.StringUtil;
import com.netease.nim.uikit.support.glide.GlideApp;
import com.chwl.app.R;
import com.chwl.app.ui.utils.ImageLoadUtils;
import com.chwl.app.ui.widget.ButtonItem;
import com.chwl.app.utils.SpannableBuilder;
import com.chwl.core.utils.ActivityUtil;
import com.chwl.library.utils.log.MLog;
import com.makeramen.roundedimageview.RoundedImageView;
import com.netease.nim.uikit.common.util.string.StringUtil;
import com.netease.nim.uikit.support.glide.GlideApp;
import java.util.List;
@@ -156,6 +156,74 @@ public class DialogManager {
}
}
public static void setDialog2(Dialog dialog, CharSequence title, CharSequence message, CharSequence okLabel,
CharSequence cancelLabel, boolean isCanCancel, boolean canceledOnTouchOutside,
final boolean isAutoHide, final OkCancelDialogListener l,
final OnKeyBackListener backListener, boolean dismissAfterBack) {
dialog.setCancelable(isCanCancel);
dialog.setCanceledOnTouchOutside(canceledOnTouchOutside);
Window window = dialog.getWindow();
window.setContentView(R.layout.layout_common_ok_cancel_dialog);
//標題
TextView tvTilte = window.findViewById(R.id.tv_title);
if (tvTilte != null) {
if (!TextUtils.isEmpty(title)) {
tvTilte.setVisibility(View.VISIBLE);
tvTilte.setText(title);
} else {
tvTilte.setVisibility(View.GONE);
}
}
//內容
TextView tip = window.findViewById(R.id.message);
tip.setText(message);
TextView ok = window.findViewById(R.id.btn_ok);
if (!TextUtils.isEmpty(okLabel)) {
ok.setText(okLabel);
} else {
ok.setVisibility(View.GONE);
}
ok.setOnClickListener(v -> {
if (isAutoHide) {
dialog.dismiss();
}
if (l != null) {
l.onOk();
}
});
TextView cancel = window.findViewById(R.id.btn_cancel);
if (!TextUtils.isEmpty(cancelLabel)) {
cancel.setText(cancelLabel);
cancel.setOnClickListener(v -> {
if (isAutoHide) {
dialog.dismiss();
}
if (l != null) {
l.onCancel();
}
});
} else {
cancel.setVisibility(View.GONE);
}
if (backListener != null) {
dialog.setOnKeyListener((dialog1, keyCode, event) -> {
if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0
&& event.getAction() == KeyEvent.ACTION_DOWN) {
if (dismissAfterBack) {
dialog.dismiss();
}
backListener.onBack();
return true;
}
return false;
});
}
}
/**
* 註釋 見 {@link DialogManager#showOkCancelDialog(
*CharSequence, CharSequence, CharSequence, CharSequence, boolean,

View File

@@ -14,6 +14,7 @@ import com.chwl.app.ui.widget.dialog.AllServiceGiftGoRoomTipsDialog
import com.chwl.core.noble.bean.AllServiceGiftProtocol
import com.chwl.core.utils.SpanUtils
import com.example.lib_utils.ktx.getColorById
import com.example.lib_utils.ktx.getDimension
import com.example.lib_utils.ktx.singleClick
import com.example.lib_utils.spannable.SpannableTextBuilder
@@ -69,7 +70,7 @@ class GiftNotify(context: Context) : BaseFloatView(context) {
SpanUtils.with(binding.tvGiftCount)
.append(data.giftName).setFontSize(11,true)
.append(data.giftName).setFontSize(R.dimen.sp_11.getDimension().toInt(),false)
.append(" X")
.append(data.giftNum.toString()).setFontSize(17,true).setBold()
.create()

View File

@@ -366,26 +366,32 @@ public class UserInfoActivity extends BaseBindingActivity<ActivityUserInfoBindin
NameplateInfo iconInfo = dataBean.getUserNameplateList().get(i);
if (iconInfo != null) {
LayoutOfficialMaskBinding maskView = LayoutOfficialMaskBinding.inflate(getLayoutInflater());
if (!TextUtils.isEmpty(iconInfo.getNameplateImage())) {
maskView.ivOfficialMask.setVisibility(View.VISIBLE);
ImageLoadUtils.load(iconInfo.getNameplateImage(), maskView.ivOfficialMask);
} else {
maskView.ivOfficialMask.setVisibility(View.GONE);
}
if (!TextUtils.isEmpty(iconInfo.getNameplateName())) {
maskView.tvOfficialMask.setVisibility(View.VISIBLE);
maskView.tvOfficialMask.setText(iconInfo.getNameplateName());
maskView.tvOfficialMask.setGravity(Gravity.CENTER);
if (iconInfo.isCustomWord()) {
if (!TextUtils.isEmpty(iconInfo.getWord())) {
maskView.tvOfficialMask.setVisibility(View.VISIBLE);
maskView.tvOfficialMask.setText(iconInfo.getWord());
maskView.tvOfficialMask.setGravity(Gravity.CENTER);
} else {
maskView.tvOfficialMask.setVisibility(View.GONE);
}
} else {
maskView.tvOfficialMask.setVisibility(View.GONE);
}
mBinding.boxNameplate.addView(maskView.getRoot());
ViewGroup.LayoutParams lp = maskView.getRoot().getLayoutParams();
lp.height = (int) AppUtils.getApp().getResources().getDimension(R.dimen.dp_20);
maskView.getRoot().setLayoutParams(lp);
}
}
mBinding.boxNameplate.setVisibility(View.VISIBLE);

View File

@@ -12,7 +12,8 @@ import com.chwl.app.ui.widget.rollviewpager.Util
class RoomWebDialogActivity : DialogWebViewActivity() {
companion object {
fun start(context: Context, url: String, showTitleBar: Boolean) {
fun start(context: Context?, url: String, showTitleBar: Boolean) {
if (context == null) return
val intent = Intent(context, RoomWebDialogActivity::class.java)
intent.putExtra("url", url)
intent.putExtra("showTitleBar", showTitleBar)

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="16dp"/>
<stroke android:width="1dp" android:color="@color/white"/>
</shape>

View File

@@ -2,6 +2,8 @@
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
xmlns:tools="http://schemas.android.com/tools"
tools:background="#66ccff"
android:layout_height="match_parent">
<View
@@ -24,6 +26,7 @@
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent">
<com.chwl.library.widget.SVGAView
android:id="@+id/bg"
android:layout_width="240dp"
@@ -37,6 +40,16 @@
android:scaleType="fitXY"
android:background="@drawable/bg_room_bg_preview"
android:layout_height="520dp"/>
<com.chwl.library.widget.text.DrawableTextView
android:layout_width="240dp"
app:dt_drawableType="shape"
app:dt_radius="16dp"
app:dt_soildColor="@color/transparent"
app:dt_strikeWidth="1dp"
app:dt_strikeColor="@color/white"
android:layout_height="520dp"/>
</androidx.cardview.widget.CardView>

View File

@@ -25,10 +25,10 @@
android:id="@+id/bg"
android:layout_width="@dimen/dp_135"
android:layout_height="@dimen/dp_180"
android:scaleType="fitXY"
android:scaleType="centerCrop"
app:autoPlay="true"
app:loopCount="1"
app:fillMode="Backward"
app:loopCount="1"
tools:src="@drawable/bg_login" />
@@ -140,12 +140,12 @@
android:minWidth="@dimen/dp_71"
android:minHeight="@dimen/dp_22"
android:paddingHorizontal="@dimen/dp_7"
android:paddingVertical="@dimen/dp_1"
android:paddingVertical="@dimen/dp_2"
android:textColor="@color/white"
android:visibility="gone"
app:dt_drawableType="shape"
app:dt_endColor="#373639"
app:dt_radius="@dimen/dp_10"
app:dt_radius="@dimen/dp_16"
app:dt_startColor="#373639"
app:dt_strikeColor="@color/white"
app:dt_strikeWidth="@dimen/dp_1"

View File

@@ -20,7 +20,7 @@
android:id="@+id/ivAvatar"
android:layout_width="@dimen/dp_36"
android:layout_height="@dimen/dp_36"
android:layout_marginStart="@dimen/dp_40"
android:layout_marginStart="41dp"
app:layout_constraintBottom_toBottomOf="@+id/rootBg"
app:layout_constraintStart_toStartOf="@+id/rootBg"
app:layout_constraintTop_toTopOf="@+id/rootBg"
@@ -74,7 +74,7 @@
<View
android:id="@id/vRoomNameWidth"
android:layout_width="@dimen/dp_80"
android:layout_marginEnd="@dimen/dp_40"
android:layout_marginEnd="41dp"
app:layout_constraintEnd_toEndOf="@id/rootBg"
app:layout_constraintTop_toTopOf="@id/tvNames"
android:layout_height="10dp"/>

View File

@@ -5329,6 +5329,7 @@
<string name="Reject">مرفوض</string>
<string name="Expired">انتهاء الصلاحية</string>
<string name="Original">أصلية</string>
<string name="empty_customize_bg">يمكنك تخصيص ما يصل إلى 6 خلفيات</string>
<string name="Purchases_Tips">تلميح شراء</string>
<string name="vipSetItemTitle5">عدم الإزعاج</string>
<string name="Purchases_hint">هل أنت متأكد أنك تريد الشراء؟</string>

View File

@@ -5125,6 +5125,7 @@ Toplam imza alın, ilgili ödülü alın
<string name="Reject">Reddedildi</string>
<string name="Expired">Süresi doldu</string>
<string name="Original">Orijinal</string>
<string name="empty_customize_bg">En fazla 6 arka planı özelleştirebilirsiniz.</string>
<string name="Purchases_Tips">Satın Alma İpucu</string>
<string name="vipSetItemTitle5">Rahatsız Etmeyin</string>
<string name="Purchases_hint">Satın almak istediğinizden emin misiniz?</string>

View File

@@ -5272,6 +5272,7 @@
<string name="Reject">拒絕</string>
<string name="Expired">過期</string>
<string name="Original">通用</string>
<string name="empty_customize_bg">您最多可以自定義 6 個背景。</string>
<string name="Purchases_Tips">購買提示</string>
<string name="vipSetItemTitle5">勿打擾</string>
<string name="Purchases_hint">您確定要購買嗎?</string>

View File

@@ -5333,6 +5333,7 @@ You cannot join again within 24 hours after leaving</string>
<string name="Reject">Rejected</string>
<string name="Expired">Expired</string>
<string name="Original">Original</string>
<string name="empty_customize_bg">You can customize up to 6 backgrounds.</string>
<string name="Purchases_Tips">Purchase Tip</string>
<string name="Purchases_hint">Are you sure you want to buy?</string>
<string name="Purchases_hint2">Are you sure you want to use this image as your background?</string>

View File

@@ -6,5 +6,6 @@ import lombok.Data;
public class NameplateInfo {
public String nameplateImage;
public String nameplateName;
public String word;
public boolean isCustomWord;
}

208
mode.json
View File

@@ -1,116 +1,98 @@
{
"code": 200,
"message": "success",
"data": {
[
{
"id": 359,
"uid": 3224,
"erbanNo": 6228657,
"birth": 631123200000,
"phoneAreaCode": "86",
"nick": "Molistar",
"defUser": 1,
"gender": 1,
"avatar": "https://image.pekolive.com/bfed3b08-1ebe-42dc-b9a4-619cb2da0e43.gif",
"region": "阿联酋",
"followNum": 2,
"fansNum": 3,
"hasPrettyErbanNo": false,
"hasRegPacket": false,
"userLevelVo": {
"experAmount": 29956763,
"charmAmount": 198940753,
"experUrl": "http://beta.img.pekolive.com/level_wealth_045.png",
"charmUrl": "http://beta.img.pekolive.com/level_charm_052.png",
"experLevelName": "Lv45",
"charmLevelName": "Lv52",
"experLevelGrp": "",
"charmLevelGrp": "",
"experLevelSeq": 45,
"charmLevelSeq": 52
},
"nameplatePic": "https://image.pekolive.com/huayunu_shen-gaoji.png",
"nameplateWord": " ",
"nameplateId": 101,
"isCustomWord": false,
"newUser": false,
"isBindPhone": false,
"isBindPasswd": true,
"isBindPaymentPwd": false,
"isCertified": false,
"isBindApple": false,
"bindType": 3,
"userInfoSkillVo": {
"liveTag": false,
"liveSkillVoList": []
},
"platformRole": 0,
"privatePhoto": [
{
"pid": 170,
"photoUrl": "https://image.pekolive.com/bcb1c5e8-d509-42e1-91fe-69d8a8feaf67.jpg",
"seqNo": 1,
"createTime": 1730192598000,
"review": true
},
{
"pid": 159,
"photoUrl": "https://image.pekolive.com/551f2525-adf8-4c46-a8b6-d6bd25280275.jpg",
"seqNo": 1,
"createTime": 1729672102000,
"review": false
},
{
"pid": 158,
"photoUrl": "https://image.pekolive.com/3010183c-8ce6-4e44-bfdd-890a941cef0b.jpg",
"seqNo": 1,
"createTime": 1729672095000,
"review": false
},
{
"pid": 157,
"photoUrl": "https://image.pekolive.com/ca486d8c-9c4c-40ff-ab0a-58982622e2fb.jpg",
"seqNo": 1,
"createTime": 1729671811000,
"review": false
}
],
"registerDay": 73,
"createTime": 1724986857000,
"isFirstCharge": false,
"isReview": false,
"userVipInfoVO": {
"vipIcon": "https://image.pekolive.com/v9.png",
"vipLevel": 9,
"vipName": "VIP9",
"vipLogo": "https://image.pekolive.com/v9.mp4\n\n",
"userCardBG": "https://image.molistar.xyz/V9_user_bg.png\n\n",
"micCircle": "https://image.molistar.xyz/v9_mic_cycle.svga",
"micNickColour": "#FF9D9A",
"friendNickColour": "#FF9D9A",
"preventKick": true,
"enterHide": true,
"preventTrace": true,
"preventFollow": true,
"uploadGifAvatar": true,
"privateChatLimit": false,
"enterRoomEffects": "https://image.molistar.xyz/v9_enter_effect.svga",
"expireTime": 1731902400000
},
"userInfoCardPic": "https://image.molistar.xyz/v1_info_card.mp4",
"micCircle": "https://image.molistar.xyz/v9_mic_cycle.svga",
"micNickColor": "#FF9D9A",
"audioCard": {
"uid": 3224,
"status": 0
},
"labels": [],
"fromSayHelloChannel": false,
"showLimitCharge": false,
"visitNum": 0,
"inRoomNum": 1,
"banAccount": false,
"hasPermitRoom": false,
"isRechargeUser": false,
"inMic": false,
"partitionId": 2
"word": " ",
"remark": " ",
"expireTime": 1731998395000,
"createTime": 1731047995000,
"updateTime": 1731318342000,
"nameplateName": "schoolgirl-Advanced",
"nameplateImage": "https://image.pekolive.com/gonghuizhangmingpaikaobei.png",
"expireDays": 0,
"iconPic": "https://image.pekolive.com/gonghuizhangmingpaikaobei.png",
"fixedWord": " ",
"nameplateType": "1"
},
"timestamp": 1731305854912
}
{
"id": 371,
"uid": 3224,
"nameplateId": 96,
"isCustomWord": false,
"remark": " ",
"expireTime": 1731143136000,
"createTime": 1731056736000,
"updateTime": 1731056736000,
"nameplateName": "king",
"nameplateImage": "https://image.pekolive.com/zu689(11).png",
"expireDays": 0,
"iconPic": "https://image.pekolive.com/zu689(11).png",
"nameplateType": "1"
},
{
"id": 369,
"uid": 3224,
"nameplateId": 100,
"isCustomWord": false,
"remark": " ",
"expireTime": 1731143131000,
"createTime": 1731056731000,
"updateTime": 1731056731000,
"nameplateName": "schoolgirl-Advanced",
"nameplateImage": "https://image.pekolive.com/huayunu:shen.png",
"expireDays": 0,
"iconPic": "https://image.pekolive.com/guanfangzhuli-bajisitan.png",
"nameplateType": "1"
},
{
"id": 367,
"uid": 3224,
"nameplateId": 93,
"isCustomWord": false,
"remark": " ",
"expireTime": 1731143124000,
"createTime": 1731056724000,
"updateTime": 1731056724000,
"nameplateName": "queen",
"nameplateImage": "https://image.pekolive.com/zu688(3).png",
"expireDays": 0,
"iconPic": "https://image.pekolive.com/zu688(3).png",
"nameplateType": "1"
},
{
"id": 365,
"uid": 3224,
"nameplateId": 92,
"isCustomWord": true,
"word": " العناوين",
"remark": " العناوين",
"expireTime": 1731143086000,
"createTime": 1731056686000,
"updateTime": 1731056686000,
"nameplateName": "給糖不搗蛋",
"nameplateImage": "https://image.pekolive.com/8350643695e74ec9bb78b9944fc9e842.png",
"expireDays": 0,
"iconPic": "https://image.pekolive.com/zu689(5).png",
"fixedWord": "العناوين",
"nameplateType": "1"
},
{
"id": 124,
"uid": 3224,
"nameplateId": 101,
"isCustomWord": false,
"word": " ",
"remark": " ",
"expireTime": 1729340700000,
"createTime": 1728476700000,
"updateTime": 1731318342000,
"nameplateName": "schoolgirl-Advanced",
"nameplateImage": "https://image.pekolive.com/gonghuizhangmingpaikaobei.png",
"expireDays": 0,
"iconPic": "https://image.pekolive.com/gonghuizhangmingpaikaobei.png",
"fixedWord": " ",
"nameplateType": "1"
}
]

View File

@@ -1,9 +1,31 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/base_shape_theme_30dp" android:state_pressed="true" />
<item android:drawable="@drawable/base_shape_theme_30dp" android:state_focused="true" />
<item android:drawable="@drawable/base_shape_theme_30dp" android:state_enabled="true" />
<item android:drawable="@drawable/base_shape_e6e6e6_30dp" android:state_enabled="false" />
<item android:state_pressed="true">
<shape>
<gradient android:startColor="#E29030" android:endColor="#FCC074" />
<corners android:radius="30dp"/>
</shape>
</item>
<item android:state_focused="true">
<shape>
<gradient android:startColor="#E29030" android:endColor="#FCC074" />
<corners android:radius="30dp"/>
</shape>
</item>
<item android:state_enabled="true">
<shape>
<gradient android:startColor="#E29030" android:endColor="#FCC074" />
<corners android:radius="30dp"/>
</shape>
</item>
<item android:state_enabled="false">
<shape>
<gradient android:startColor="#80E29030" android:endColor="#80FCC074" />
<corners android:radius="30dp"/>
</shape>
</item>
</selector>