feat:移除AVRoomActivity中的全服礼物飘屏逻辑到BaseActivity

This commit is contained in:
Max
2024-03-18 14:05:29 +08:00
parent 3181a115d8
commit fced114686
5 changed files with 56 additions and 290 deletions

View File

@@ -2,15 +2,12 @@ package com.nnbc123.app.avroom.activity;
import static android.view.View.VISIBLE; import static android.view.View.VISIBLE;
import static com.nnbc123.core.im.custom.bean.CustomAttachment.CUSTOM_MSG_ALL_SERVICE_GIFT;
import static com.nnbc123.core.im.custom.bean.CustomAttachment.CUSTOM_MSG_HEADER_TYPE_GIFT;
import static com.nnbc123.core.im.custom.bean.CustomAttachment.CUSTOM_MSG_LUCKY_GIFT; import static com.nnbc123.core.im.custom.bean.CustomAttachment.CUSTOM_MSG_LUCKY_GIFT;
import static com.nnbc123.core.im.custom.bean.CustomAttachment.CUSTOM_MSG_LUCKY_GIFT_SERVER_NOTIFY; import static com.nnbc123.core.im.custom.bean.CustomAttachment.CUSTOM_MSG_LUCKY_GIFT_SERVER_NOTIFY;
import static com.nnbc123.core.im.custom.bean.CustomAttachment.CUSTOM_MSG_ROOM_PK; import static com.nnbc123.core.im.custom.bean.CustomAttachment.CUSTOM_MSG_ROOM_PK;
import static com.nnbc123.core.im.custom.bean.CustomAttachment.CUSTOM_MSG_SUB_ROOM_PK_NOTIFY; import static com.nnbc123.core.im.custom.bean.CustomAttachment.CUSTOM_MSG_SUB_ROOM_PK_NOTIFY;
import android.annotation.SuppressLint; import android.annotation.SuppressLint;
import android.app.Dialog;
import android.content.Context; import android.content.Context;
import android.content.Intent; import android.content.Intent;
import android.graphics.drawable.Drawable; import android.graphics.drawable.Drawable;
@@ -65,7 +62,6 @@ import com.nnbc123.app.ui.user.UserInfoActivity;
import com.nnbc123.app.ui.utils.ImageLoadUtils; import com.nnbc123.app.ui.utils.ImageLoadUtils;
import com.nnbc123.app.ui.webview.CommonWebViewActivity; import com.nnbc123.app.ui.webview.CommonWebViewActivity;
import com.nnbc123.app.ui.widget.NobleOpenNoticeView; import com.nnbc123.app.ui.widget.NobleOpenNoticeView;
import com.nnbc123.app.ui.widget.dialog.AllServiceGiftLevelDialog;
import com.nnbc123.app.ui.widget.dialog.MonsterDialog; import com.nnbc123.app.ui.widget.dialog.MonsterDialog;
import com.nnbc123.app.ui.widget.marqueeview.Utils; import com.nnbc123.app.ui.widget.marqueeview.Utils;
import com.nnbc123.app.utils.UserUtils; import com.nnbc123.app.utils.UserUtils;
@@ -89,7 +85,6 @@ import com.nnbc123.core.monsterhunting.bean.MonsterHuntingResult;
import com.nnbc123.core.monsterhunting.bean.MonsterInfo; import com.nnbc123.core.monsterhunting.bean.MonsterInfo;
import com.nnbc123.core.monsterhunting.bean.MonsterProtocol; import com.nnbc123.core.monsterhunting.bean.MonsterProtocol;
import com.nnbc123.core.monsterhunting.manager.MonsterDataManager; import com.nnbc123.core.monsterhunting.manager.MonsterDataManager;
import com.nnbc123.core.noble.AllServiceGiftProtocol;
import com.nnbc123.core.noble.NobleInfo; import com.nnbc123.core.noble.NobleInfo;
import com.nnbc123.core.noble.NobleResourceType; import com.nnbc123.core.noble.NobleResourceType;
import com.nnbc123.core.noble.NobleUtil; import com.nnbc123.core.noble.NobleUtil;
@@ -116,7 +111,6 @@ import com.nnbc123.core.utils.LogUtils;
import com.nnbc123.core.utils.StringUtils; import com.nnbc123.core.utils.StringUtils;
import com.nnbc123.library.base.factory.CreatePresenter; import com.nnbc123.library.base.factory.CreatePresenter;
import com.nnbc123.library.rxbus.RxBus; import com.nnbc123.library.rxbus.RxBus;
import com.nnbc123.library.utils.JavaUtil;
import com.nnbc123.library.utils.SingleToastUtil; import com.nnbc123.library.utils.SingleToastUtil;
import com.nnbc123.library.utils.UIUtils; import com.nnbc123.library.utils.UIUtils;
import com.opensource.svgaplayer.SVGADrawable; import com.opensource.svgaplayer.SVGADrawable;
@@ -134,7 +128,6 @@ import java.lang.ref.WeakReference;
import java.net.MalformedURLException; import java.net.MalformedURLException;
import java.net.URL; import java.net.URL;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@@ -194,8 +187,6 @@ public class AVRoomActivity extends BaseMvpActivity<IAvRoomView, AvRoomPresenter
/*********************************显示全服礼物***************************************/ /*********************************显示全服礼物***************************************/
private GiftBroadcastObserver giftObserver; private GiftBroadcastObserver giftObserver;
private Dialog giftDialog;
private LinkedList<AllServiceGiftProtocol.DataBean> giftList;
private boolean isResume = true; private boolean isResume = true;
@Nullable @Nullable
private SingleRoomTipDialog singleRoomTipDialog; private SingleRoomTipDialog singleRoomTipDialog;
@@ -498,9 +489,6 @@ public class AVRoomActivity extends BaseMvpActivity<IAvRoomView, AvRoomPresenter
super.onResume(); super.onResume();
AvRoomDataManager.get().roomNoDestory = true; AvRoomDataManager.get().roomNoDestory = true;
registerGiftBroadcastMessage(true); registerGiftBroadcastMessage(true);
if (giftList != null) {
giftList.clear();
}
isResume = true; isResume = true;
} }
@@ -901,12 +889,6 @@ public class AVRoomActivity extends BaseMvpActivity<IAvRoomView, AvRoomPresenter
monsterDialog.dismiss(); monsterDialog.dismiss();
monsterDialog = null; monsterDialog = null;
} }
if (giftDialog != null && giftDialog.isShowing()) {
giftDialog.setOnDismissListener(null);
giftDialog.dismiss();
giftDialog = null;
}
if (limitEnterRoomHelper != null) { if (limitEnterRoomHelper != null) {
limitEnterRoomHelper.release(); limitEnterRoomHelper.release();
} }
@@ -1187,30 +1169,6 @@ public class AVRoomActivity extends BaseMvpActivity<IAvRoomView, AvRoomPresenter
if (baseProtocol == null) return; if (baseProtocol == null) return;
switch (baseProtocol.getFirst()) { switch (baseProtocol.getFirst()) {
case CUSTOM_MSG_HEADER_TYPE_GIFT:
if (!isValid()) return;
if (giftList == null) {
giftList = new LinkedList<>();
}
int second2 = baseProtocol.getSecond();
AllServiceGiftProtocol.DataBean data = JSON.parseObject(String.valueOf(baseProtocol.getData()), AllServiceGiftProtocol.DataBean.class);
if (data == null || data.getGiftUrl() == null || data.isCeremonyGift())
return;
giftList.add(data);
if (second2 == CUSTOM_MSG_ALL_SERVICE_GIFT) {
if (giftDialog != null && giftDialog.isShowing()) {
// 如果当前以及有礼物弹窗在展示,则需要等到他 dismiss 后再显示下一个
AllServiceGiftProtocol.DataBean dataBean = giftList.peekFirst();
if (dataBean != null) {
return;
} else {
giftDialog.dismiss();
}
} else {
showGiftDialog();
}
}
break;
case CUSTOM_MSG_LUCKY_GIFT: case CUSTOM_MSG_LUCKY_GIFT:
if (baseProtocol.getSecond() == CUSTOM_MSG_LUCKY_GIFT_SERVER_NOTIFY) { if (baseProtocol.getSecond() == CUSTOM_MSG_LUCKY_GIFT_SERVER_NOTIFY) {
RoomReceivedLuckyGiftAttachment attachment = new RoomReceivedLuckyGiftAttachment(CUSTOM_MSG_LUCKY_GIFT_SERVER_NOTIFY); RoomReceivedLuckyGiftAttachment attachment = new RoomReceivedLuckyGiftAttachment(CUSTOM_MSG_LUCKY_GIFT_SERVER_NOTIFY);
@@ -1233,40 +1191,6 @@ public class AVRoomActivity extends BaseMvpActivity<IAvRoomView, AvRoomPresenter
} }
} }
private void showGiftDialog() {
if (giftList.size() == 0) return;
giftDialog = generateAllServiceGiftDialog(this, giftList.peekFirst());
giftDialog.setOnDismissListener(dialog -> {
giftList.pollFirst();
AllServiceGiftProtocol.DataBean dataBean = giftList.peekFirst();
if (dataBean != null) {
if (isValid()) {
showGiftDialog();
} else {
giftList.clear();
}
}
});
giftDialog.show();
}
private AllServiceGiftLevelDialog generateAllServiceGiftDialog(Context context, AllServiceGiftProtocol.DataBean dataBean) {
return new AllServiceGiftLevelDialog(context, dataBean);
// switch (JavaUtil.str2int(dataBean.getLevelNum())) {
// default:
// case AllServiceGiftDialog.ALL_SERVICE_GIFT_LEVEL_1:
// return new AllServiceGiftLevelOneDialog(context, dataBean);
//
// case AllServiceGiftDialog.ALL_SERVICE_GIFT_LEVEL_2:
//
// return new AllServiceGiftLevelTwoDialog(context, dataBean);
//
// case AllServiceGiftDialog.ALL_SERVICE_GIFT_LEVEL_3:
// return new AllServiceGiftLevelThreeDialog(context, dataBean);
// }
}
@Override @Override
protected void onPause() { protected void onPause() {
super.onPause(); super.onPause();

View File

@@ -4,6 +4,7 @@ import static com.nnbc123.core.Constants.DEBUG_MAX_UID;
import static com.nnbc123.core.im.custom.bean.CustomAttachment.CUSTOM_MESS_HEAD_NOBLE; import static com.nnbc123.core.im.custom.bean.CustomAttachment.CUSTOM_MESS_HEAD_NOBLE;
import static com.nnbc123.core.im.custom.bean.CustomAttachment.CUSTOM_MESS_SUB_OPENNOBLE; import static com.nnbc123.core.im.custom.bean.CustomAttachment.CUSTOM_MESS_SUB_OPENNOBLE;
import static com.nnbc123.core.im.custom.bean.CustomAttachment.CUSTOM_MESS_SUB_RENEWNOBLE; import static com.nnbc123.core.im.custom.bean.CustomAttachment.CUSTOM_MESS_SUB_RENEWNOBLE;
import static com.nnbc123.core.im.custom.bean.CustomAttachment.CUSTOM_MSG_ALL_SERVICE_GIFT;
import static com.nnbc123.core.im.custom.bean.CustomAttachment.CUSTOM_MSG_HEADER_TYPE_GIFT; import static com.nnbc123.core.im.custom.bean.CustomAttachment.CUSTOM_MSG_HEADER_TYPE_GIFT;
import static com.nnbc123.core.im.custom.bean.CustomAttachment.CUSTOM_MSG_RED_PACKAGE; import static com.nnbc123.core.im.custom.bean.CustomAttachment.CUSTOM_MSG_RED_PACKAGE;
import static com.nnbc123.core.im.custom.bean.CustomAttachment.CUSTOM_MSG_SUB_RED_PACKAGE_RECEIVE_ALL_DIAMOND; import static com.nnbc123.core.im.custom.bean.CustomAttachment.CUSTOM_MSG_SUB_RED_PACKAGE_RECEIVE_ALL_DIAMOND;
@@ -13,6 +14,7 @@ import static com.nnbc123.library.utils.UIUtils.getActivityByContext;
import android.annotation.SuppressLint; import android.annotation.SuppressLint;
import android.app.ActivityManager; import android.app.ActivityManager;
import android.app.Dialog;
import android.content.ComponentName; import android.content.ComponentName;
import android.content.Context; import android.content.Context;
import android.content.Intent; import android.content.Intent;
@@ -69,7 +71,7 @@ import com.nnbc123.app.ui.login.LoginPhoneActivity;
import com.nnbc123.app.ui.pay.ChargeActivity; import com.nnbc123.app.ui.pay.ChargeActivity;
import com.nnbc123.app.ui.setting.ResetPasswordActivity; import com.nnbc123.app.ui.setting.ResetPasswordActivity;
import com.nnbc123.app.ui.widget.DefaultToolBar; import com.nnbc123.app.ui.widget.DefaultToolBar;
import com.nnbc123.app.ui.widget.dialog.AllServiceGiftLevelCeremonyDialog; import com.nnbc123.app.ui.widget.dialog.AllServiceGiftLevelDialog;
import com.nnbc123.app.ui.widget.dialog.AllServiceVipLevelUPDialog; import com.nnbc123.app.ui.widget.dialog.AllServiceVipLevelUPDialog;
import com.nnbc123.app.ui.widget.dialog.GameInviteDialog; import com.nnbc123.app.ui.widget.dialog.GameInviteDialog;
import com.nnbc123.app.ui.widget.dialog.OpenNobleGlobalNoticeDialog; import com.nnbc123.app.ui.widget.dialog.OpenNobleGlobalNoticeDialog;
@@ -114,6 +116,7 @@ import java.lang.ref.WeakReference;
import java.lang.reflect.Field; import java.lang.reflect.Field;
import java.lang.reflect.Method; import java.lang.reflect.Method;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List; import java.util.List;
import io.reactivex.Observable; import io.reactivex.Observable;
@@ -145,6 +148,8 @@ public abstract class BaseActivity extends RxAppCompatActivity
private OpenNobleGlobalNoticeDialog mNoticeDialog; private OpenNobleGlobalNoticeDialog mNoticeDialog;
private boolean isShowingChargeDialog; private boolean isShowingChargeDialog;
private Dialog giftDialog;
private LinkedList<AllServiceGiftProtocol.DataBean> giftList;
@Override @Override
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
@@ -340,7 +345,14 @@ public abstract class BaseActivity extends RxAppCompatActivity
mNoticeDialog.dismiss(); mNoticeDialog.dismiss();
mNoticeDialog = null; mNoticeDialog = null;
} }
if (giftDialog != null && giftDialog.isShowing()) {
giftDialog.setOnDismissListener(null);
giftDialog.dismiss();
giftDialog = null;
}
if (giftList != null) {
giftList.clear();
}
super.onDestroy(); super.onDestroy();
LogUtil.i(this.getClass().getName(), "onDestroy"); LogUtil.i(this.getClass().getName(), "onDestroy");
/* ImageLoadUtils.clearMemory(this);*/ /* ImageLoadUtils.clearMemory(this);*/
@@ -508,7 +520,6 @@ public abstract class BaseActivity extends RxAppCompatActivity
.compose(bindUntilEvent(ActivityEvent.PAUSE)) .compose(bindUntilEvent(ActivityEvent.PAUSE))
.observeOn(AndroidSchedulers.mainThread()) .observeOn(AndroidSchedulers.mainThread())
.subscribe(this::onRoomEventReceived); .subscribe(this::onRoomEventReceived);
} }
@Override @Override
@@ -930,15 +941,53 @@ public abstract class BaseActivity extends RxAppCompatActivity
UserUtils.getUserInfo() == null) UserUtils.getUserInfo() == null)
return; return;
AllServiceGiftProtocol.DataBean data = JSON.parseObject(String.valueOf(baseProtocol.getData()), AllServiceGiftProtocol.DataBean.class); AllServiceGiftProtocol.DataBean data = JSON.parseObject(String.valueOf(baseProtocol.getData()), AllServiceGiftProtocol.DataBean.class);
if (data == null || data.getGiftUrl() == null || !data.isCeremonyGift()) if (data == null || data.getGiftUrl() == null)
return; return;
new AllServiceGiftLevelCeremonyDialog(context, data).show(); if (giftList == null) {
giftList = new LinkedList<>();
}
int second2 = baseProtocol.getSecond();
if (second2 == CUSTOM_MSG_ALL_SERVICE_GIFT) {
giftList.add(data);
if (giftDialog != null && giftDialog.isShowing()) {
// 如果当前以及有礼物弹窗在展示,则需要等到他 dismiss 后再显示下一个
AllServiceGiftProtocol.DataBean dataBean = giftList.peekFirst();
if (dataBean != null) {
return;
} else {
giftDialog.dismiss();
}
} else {
showGiftDialog();
}
}
break; break;
default: default:
break; break;
} }
} }
private void showGiftDialog() {
if (giftList.size() == 0) return;
giftDialog = generateAllServiceGiftDialog(this, giftList.peekFirst());
giftDialog.setOnDismissListener(dialog -> {
giftList.pollFirst();
AllServiceGiftProtocol.DataBean dataBean = giftList.peekFirst();
if (dataBean != null) {
if (isValid()) {
showGiftDialog();
} else {
giftList.clear();
}
}
});
giftDialog.show();
}
private AllServiceGiftLevelDialog generateAllServiceGiftDialog(Context context, AllServiceGiftProtocol.DataBean dataBean) {
return new AllServiceGiftLevelDialog(context, dataBean);
}
public void onGrabApprenticesEvent(GrabApprenticesEvent event) { public void onGrabApprenticesEvent(GrabApprenticesEvent event) {
if (!isTopActivity()) return; if (!isTopActivity()) return;
if (dialog != null && dialog.isAdded()) { if (dialog != null && dialog.isAdded()) {

View File

@@ -1,77 +0,0 @@
package com.nnbc123.app.ui.widget.dialog;
import android.content.Context;
import android.graphics.Color;
import android.graphics.Point;
import android.graphics.drawable.ColorDrawable;
import android.os.Bundle;
import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
import androidx.databinding.DataBindingUtil;
import com.nnbc123.core.manager.AvRoomDataManager;
import com.nnbc123.core.noble.AllServiceGiftProtocol;
import com.nnbc123.app.R;
import com.nnbc123.app.avroom.activity.AVRoomActivity;
import com.nnbc123.app.databinding.DialogGiftAllServiceCeremonyBinding;
import java.util.concurrent.TimeUnit;
import io.reactivex.Observable;
/**
* Created by MadisonRong on 11/05/2018.
*/
public class AllServiceGiftLevelCeremonyDialog extends AllServiceGiftDialog {
private DialogGiftAllServiceCeremonyBinding binding;
public AllServiceGiftLevelCeremonyDialog(Context context, AllServiceGiftProtocol.DataBean dataBean) {
super(context, R.style.FullScreenDialog, dataBean);
}
@Override
protected void onCreate(Bundle savedInstanceState) {
requestWindowFeature(Window.FEATURE_NO_TITLE);
View inflate = LayoutInflater.from(getContext()).inflate(R.layout.dialog_gift_all_service_ceremony, null);
setContentView(inflate.getRootView());
setCancelable(true);
setCanceledOnTouchOutside(true);
binding = DataBindingUtil.bind(inflate);
Window window = getWindow();
Point point = new Point();
if (window != null) {
window.setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
WindowManager.LayoutParams windowParams = window.getAttributes();
windowParams.width = WindowManager.LayoutParams.MATCH_PARENT;
windowParams.height = WindowManager.LayoutParams.WRAP_CONTENT;
windowParams.dimAmount = 0.0f;
windowParams.gravity = Gravity.TOP;
windowParams.x = 0;
windowParams.y = 0;
window.addFlags(WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE | WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL);
window.setAttributes(windowParams);
window.setWindowAnimations(R.style.anim_fade);
window.getWindowManager().getDefaultDisplay().getSize(point);
}
if (dataBean != null) {
// 设置定时器
Observable.timer((long) dataBean.getNotifyStaySecond(), TimeUnit.SECONDS)
.subscribe(aLong -> {
dismiss();
});
binding.setGiftBean(dataBean);
binding.tvGoRoom.setVisibility(dataBean.getRoomUid() == 0
|| (AvRoomDataManager.get().mCurrentRoomInfo != null && dataBean.getRoomUid() == AvRoomDataManager.get().mCurrentRoomInfo.getUid())
? View.GONE : View.VISIBLE);
binding.tvGoRoom.setOnClickListener(view -> AVRoomActivity.start(getContext(), dataBean.getRoomUid()));
}
}
}

View File

@@ -1,130 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools">
<data>
<variable
name="giftBean"
type="com.nnbc123.core.noble.AllServiceGiftProtocol.DataBean" />
</data>
<FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:paddingTop="30dp">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/all_service_gift_ceremony_background"
android:gravity="center_vertical"
android:orientation="horizontal">
<TextView
android:id="@+id/benefactor_nick"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="35dp"
android:ellipsize="end"
android:gravity="center"
android:maxEms="5"
android:maxLines="1"
android:singleLine="true"
android:text="@{giftBean.sendUserNick}"
android:textColor="#FBC200"
android:textSize="12dp"
tools:ignore="SpUsage"
tools:text="宫泽艾里斯-宫泽艾里斯-宫泽艾里斯" />
<com.nnbc123.app.common.widget.CircleImageView
android:id="@+id/benefactor_avatar"
avatarUrl="@{giftBean.sendUserAvatar}"
android:layout_width="20dp"
android:layout_height="20dp"
android:layout_marginStart="2dp"
app:cborder_color="#FFEB71"
app:cborder_width="1dp"
tools:src="@drawable/default_avatar" />
<TextView
android:id="@+id/give_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="2dp"
android:text="送给"
android:textColor="@color/white"
android:textSize="12dp" />
<TextView
android:id="@+id/receiver_nick"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="2dp"
android:ellipsize="end"
android:gravity="center"
android:maxEms="5"
android:maxLines="1"
android:singleLine="true"
android:text="@{giftBean.recvUserNick}"
android:textColor="#FBC200"
android:textSize="12dp"
tools:text="梅利奥达斯-梅利奥达斯-梅利奥达斯" />
<com.nnbc123.app.common.widget.CircleImageView
android:id="@+id/receiver_avatar"
avatarUrl="@{giftBean.recvUserAvatar}"
android:layout_width="20dp"
android:layout_height="20dp"
android:layout_marginStart="2dp"
app:cborder_color="#FFEB71"
app:cborder_width="1dp"
tools:src="@drawable/default_avatar" />
<TextView
android:id="@+id/gift_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="2dp"
android:gravity="center"
android:text="@{giftBean.giftName}"
android:textColor="#80F9FF"
android:textSize="12dp"
android:textStyle="bold"
tools:ignore="SpUsage"
tools:text="神邸荣光" />
<ImageView
android:id="@+id/gift_img"
nomalUrl="@{giftBean.giftUrl}"
android:layout_width="25dp"
android:layout_height="25dp"
android:layout_gravity="center"
android:layout_marginStart="2dp" />
<TextView
android:id="@+id/gift_number"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="2dp"
android:gravity="center"
android:text="@{@string/x + giftBean.giftNum}"
android:textColor="#80F9FF"
android:textSize="12dp"
android:textStyle="bold"
tools:ignore="SpUsage"
tools:text="x1" />
<ImageView
android:id="@+id/tv_go_room"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_5"
android:src="@drawable/all_service_gift_ceremony_go_to" />
</LinearLayout>
</FrameLayout>
</layout>

View File

@@ -28,5 +28,5 @@ COMPILE_SDK_VERSION=32
MIN_SDK_VERSION=21 MIN_SDK_VERSION=21
TARGET_SDK_VERSION=32 TARGET_SDK_VERSION=32
version_name=2.0.0 version_name=2.1.1
version_code=2000 version_code=2101