1:添加Cp动画,需调试
This commit is contained in:
@@ -104,6 +104,8 @@ public class RoomMessageEvent extends BaseEvent {
|
||||
private SingerInfo.SongInfo song_info;
|
||||
private SingerInfo.SongInfo next_song_info;
|
||||
|
||||
private String rights_icon;//Cp特效
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -132,6 +132,7 @@ public class EMMessageInfo implements MultiItemEntity {
|
||||
|
||||
///房间内换麦
|
||||
public static final int QXRoomMessageTypehm = 1039;
|
||||
public static final int QXRoomMessageTypeCPText = 1080;//CP特效,进入房间的特效,
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -28,6 +28,7 @@ import android.view.KeyEvent
|
||||
import android.view.LayoutInflater
|
||||
import android.view.MotionEvent
|
||||
import android.view.View
|
||||
import android.view.View.GONE
|
||||
import android.view.ViewGroup
|
||||
import android.view.WindowManager
|
||||
import android.view.animation.Animation
|
||||
@@ -49,6 +50,7 @@ import com.alibaba.android.arouter.facade.annotation.Autowired
|
||||
import com.alibaba.android.arouter.facade.annotation.Route
|
||||
import com.alibaba.android.arouter.launcher.ARouter
|
||||
import com.blankj.utilcode.util.ActivityUtils
|
||||
import com.blankj.utilcode.util.FileUtils
|
||||
import com.blankj.utilcode.util.GsonUtils
|
||||
import com.blankj.utilcode.util.LogUtils
|
||||
import com.blankj.utilcode.util.ThreadUtils
|
||||
@@ -64,6 +66,9 @@ import com.tencent.imsdk.v2.V2TIMManager
|
||||
import com.tencent.imsdk.v2.V2TIMSDKListener
|
||||
import com.tencent.imsdk.v2.V2TIMUserFullInfo
|
||||
import com.tencent.imsdk.v2.V2TIMValueCallback
|
||||
import com.tencent.qgame.animplayer.AnimConfig
|
||||
import com.tencent.qgame.animplayer.AnimView
|
||||
import com.tencent.qgame.animplayer.inter.IAnimListener
|
||||
import com.xscm.modulemain.BaseMvpActivity
|
||||
import com.xscm.modulemain.R
|
||||
import com.xscm.modulemain.activity.main.activity.MainActivity
|
||||
@@ -102,6 +107,7 @@ import com.xscm.moduleutil.adapter.LikeUserAdapter
|
||||
import com.xscm.moduleutil.base.AppStateListener
|
||||
import com.xscm.moduleutil.base.AppStateManager
|
||||
import com.xscm.moduleutil.base.CommonAppContext
|
||||
import com.xscm.moduleutil.base.CommonAppContext.post
|
||||
import com.xscm.moduleutil.bean.GiftBean
|
||||
import com.xscm.moduleutil.bean.HeadlineBean
|
||||
import com.xscm.moduleutil.bean.MqttXlhEnd
|
||||
@@ -166,6 +172,7 @@ import com.xscm.moduleutil.utils.SystemUtils
|
||||
import com.xscm.moduleutil.utils.roomview.GiftDisplayManager
|
||||
import com.xscm.moduleutil.widget.CircularProgressView
|
||||
import com.xscm.moduleutil.widget.CustomMusicFloatingView
|
||||
import com.xscm.moduleutil.widget.GiftAnimView
|
||||
import com.xscm.moduleutil.widget.QXGiftPlayerManager
|
||||
import com.xscm.moduleutil.widget.RoomKtvWheatView
|
||||
import com.xscm.moduleutil.widget.SilentCountDownTimer
|
||||
@@ -177,12 +184,20 @@ import io.reactivex.Observable
|
||||
import io.reactivex.android.schedulers.AndroidSchedulers
|
||||
import io.reactivex.disposables.Disposable
|
||||
import io.reactivex.schedulers.Schedulers
|
||||
import okhttp3.Call
|
||||
import okhttp3.Callback
|
||||
import okhttp3.OkHttpClient
|
||||
import okhttp3.Request
|
||||
import okhttp3.Response
|
||||
import org.greenrobot.eventbus.EventBus
|
||||
import org.greenrobot.eventbus.Subscribe
|
||||
import org.greenrobot.eventbus.ThreadMode
|
||||
import pub.devrel.easypermissions.AppSettingsDialog
|
||||
import pub.devrel.easypermissions.EasyPermissions
|
||||
import pub.devrel.easypermissions.EasyPermissions.PermissionCallbacks
|
||||
import java.io.File
|
||||
import java.io.FileOutputStream
|
||||
import java.io.IOException
|
||||
import java.lang.ref.WeakReference
|
||||
import java.nio.charset.StandardCharsets
|
||||
import java.util.Arrays
|
||||
@@ -1374,7 +1389,7 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
|
||||
handleMsgType1054(messageEvent, text)
|
||||
} else if (msgType == EMMessageInfo.QXRoomMessageTypeHeartDid) {
|
||||
handleMsgType1055(messageEvent)
|
||||
} else if (msgType == EMMessageInfo.QXRoomMessageTypeRoomDress) {
|
||||
} else if (msgType == EMMessageInfo.QXRoomMessageTypeRoomDress) {//用户修改装扮
|
||||
handleMsgType1035(messageEvent, text)
|
||||
} else if (msgType == EMMessageInfo.QXRoomMessageTypeRoomPKAgreeOrRefuse
|
||||
|| msgType == EMMessageInfo.QXRoomMessageTypeRoomPKStart
|
||||
@@ -1473,11 +1488,154 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
|
||||
if (mRoomInfoResp != null && mRoomInfoResp!!.room_info != null) {
|
||||
roomFragment!!.handleRoomMessage(messageEvent)
|
||||
}
|
||||
}else if(msgType == EMMessageInfo.QXRoomMessageTypeCPText){
|
||||
if(messageEvent.text.rights_icon.isNotEmpty()){
|
||||
mBinding?.roomCpView?.fl!!.visibility = View.VISIBLE
|
||||
ImageUtils.loadHead(messageEvent.text.fromUserInfo.avatar, mBinding?.roomCpView?.roomCpHead1)
|
||||
mBinding?.roomCpView?.roomCpName1?.text = messageEvent.text.fromUserInfo.nickname
|
||||
mBinding?.roomCpView?.roomCpName2?.text = messageEvent.text.toUserInfo.nickname
|
||||
ImageUtils.loadHead(messageEvent.text.toUserInfo.avatar, mBinding?.roomCpView?.roomCpHead2)
|
||||
playVap(messageEvent.text.rights_icon, mBinding?.roomCpView?.animCp!!, true)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fun playVap(url: String, animView: AnimView, isTxk: Boolean) {
|
||||
|
||||
if (!FileUtils.isFileExists(this.cacheDir.absolutePath + url.substring(url.lastIndexOf("/")))) {
|
||||
LogUtils.e("无缓存")
|
||||
|
||||
downloadAndPlay(this, url, object : GiftAnimView.DownloadCallback {
|
||||
override fun onSuccess(file: File) {
|
||||
post(Runnable {
|
||||
animView.startPlay(file)
|
||||
})
|
||||
}
|
||||
|
||||
override fun onFailure(e: java.lang.Exception) {
|
||||
LogUtils.e("MP4下载或播放失败: " + e.message)
|
||||
}
|
||||
})
|
||||
} else {
|
||||
LogUtils.e("有缓存")
|
||||
if (isTxk) {
|
||||
animView.setLoop(20)
|
||||
}
|
||||
animView.startPlay(
|
||||
File(this.cacheDir.absolutePath + url.substring(url.lastIndexOf("/")))
|
||||
)
|
||||
}
|
||||
//情侣特效播放回调
|
||||
mBinding?.roomCpView?.animCp?.setAnimListener(object : IAnimListener {
|
||||
override fun onFailed(errorType: Int, errorMsg: String?) {
|
||||
}
|
||||
|
||||
override fun onVideoComplete() {
|
||||
runOnUiThread {
|
||||
//播放结束后隐藏
|
||||
mBinding?.roomCpView?.fl.let { view ->
|
||||
if (view?.visibility == View.VISIBLE) {
|
||||
// 你的代码
|
||||
view?.visibility = GONE
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
override fun onVideoDestroy() {
|
||||
}
|
||||
|
||||
override fun onVideoRender(frameIndex: Int, config: AnimConfig?) {
|
||||
}
|
||||
|
||||
override fun onVideoStart() {
|
||||
}
|
||||
|
||||
})
|
||||
}
|
||||
fun downloadAndPlay(
|
||||
context: Context,
|
||||
playImage: String,
|
||||
callback: GiftAnimView.DownloadCallback?
|
||||
) {
|
||||
|
||||
val filePath = context.cacheDir.absolutePath + playImage.substring(playImage.lastIndexOf("/"))
|
||||
val file = File(filePath)
|
||||
|
||||
if (!FileUtils.isFileExists(this.cacheDir.absolutePath + playImage.substring(playImage.lastIndexOf("/")))) {
|
||||
LogUtils.e("无缓存")
|
||||
// 使用OkHttp进行下载
|
||||
val client = OkHttpClient()
|
||||
val request = Request.Builder()
|
||||
.url(playImage)
|
||||
.build()
|
||||
|
||||
client.newCall(request).enqueue(object : Callback {
|
||||
override fun onFailure(call: Call, e: IOException) {
|
||||
LogUtils.e("MP4下载失败: " + e.toString())
|
||||
// 在主线程中回调失败
|
||||
post(Runnable {
|
||||
if (callback != null) {
|
||||
callback.onFailure(e)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
@Throws(IOException::class)
|
||||
override fun onResponse(call: Call, response: Response) {
|
||||
if (response.isSuccessful()) {
|
||||
try {
|
||||
response.body().use { responseBody ->
|
||||
if (responseBody != null) {
|
||||
val downloadedFile = File(filePath)
|
||||
val fos = FileOutputStream(downloadedFile)
|
||||
fos.write(responseBody.bytes())
|
||||
fos.close()
|
||||
|
||||
// 在主线程中回调成功
|
||||
post(Runnable {
|
||||
if (callback != null) {
|
||||
callback.onSuccess(downloadedFile)
|
||||
}
|
||||
})
|
||||
} else {
|
||||
// 在主线程中回调失败
|
||||
post(Runnable {
|
||||
if (callback != null) {
|
||||
callback.onFailure(IOException("Response body is null"))
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
} catch (e: java.lang.Exception) {
|
||||
LogUtils.e("MP4文件保存失败: " + e.message)
|
||||
// 在主线程中回调失败
|
||||
post(Runnable {
|
||||
if (callback != null) {
|
||||
callback.onFailure(e)
|
||||
}
|
||||
})
|
||||
}
|
||||
} else {
|
||||
LogUtils.e("MP4下载响应失败")
|
||||
// 在主线程中回调失败
|
||||
post(Runnable {
|
||||
if (callback != null) {
|
||||
callback.onFailure(IOException("Response not successful: " + response.code()))
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
})
|
||||
} else {
|
||||
// 文件已存在,直接回调成功
|
||||
if (callback != null) {
|
||||
callback.onSuccess(file)
|
||||
}
|
||||
}
|
||||
}
|
||||
private var endTime: Long = 0
|
||||
|
||||
private fun xlhDjs(endTimeStr: String?) {
|
||||
@@ -2093,7 +2251,7 @@ class RoomActivity : BaseMvpActivity<RoomPresenter?, ActivityRoomBinding?>(),
|
||||
val typeId = mRoomInfoResp!!.room_info.type_id
|
||||
if ("2" == typeId) {
|
||||
roomFragment!!.handleRoomMessage(messageEvent)
|
||||
} else if ("1" == typeId || "4" == typeId || "3" == typeId || "8" == typeId) {
|
||||
} else if ("1" == typeId || "4" == typeId || "3" == typeId || "8" == typeId || "9" == typeId) {
|
||||
val labelId = mRoomInfoResp!!.room_info.label_id
|
||||
if ("2" == labelId) {
|
||||
roomFragment!!.handleRoomMessage(messageEvent)
|
||||
|
||||
@@ -547,6 +547,7 @@ public class ChatRoomFragment extends BaseMvpFragment<ChatRoomPresenter, RoomFra
|
||||
case 1072:
|
||||
case 1071:
|
||||
case 125:
|
||||
case 1080:
|
||||
if (getActivity() instanceof RoomActivity) {
|
||||
((RoomActivity) getActivity()).roomInfoEvent(message);
|
||||
}
|
||||
|
||||
@@ -906,9 +906,6 @@ public class RoomFragment extends BaseMvpFragment<RoomPresenter, FragmentRoomBin
|
||||
// TODO: 2025/11/17 点唱房
|
||||
private void handleJukeboxEvent(RoomMessageEvent messageEvent) {
|
||||
switch (messageEvent.getMsgType()) {
|
||||
case 1037:
|
||||
// roomJukeboxFragment.event1037(messageEvent);
|
||||
break;
|
||||
case 1003:
|
||||
roomJukeboxFragment.event1003(messageEvent);
|
||||
break;
|
||||
@@ -916,31 +913,16 @@ public class RoomFragment extends BaseMvpFragment<RoomPresenter, FragmentRoomBin
|
||||
roomJukeboxFragment.event1004(messageEvent);
|
||||
break;
|
||||
case 1005:
|
||||
// roomJukeboxFragment.event1005(messageEvent);
|
||||
break;
|
||||
case 1015:
|
||||
// roomJukeboxFragment.event1015(messageEvent);
|
||||
break;
|
||||
case 1030:
|
||||
break;
|
||||
|
||||
case 1031:
|
||||
// singSongFragment.event1031(messageEvent);
|
||||
break;
|
||||
case 1032:
|
||||
// singSongFragment.event1032(messageEvent);
|
||||
break;
|
||||
case 1033:
|
||||
// singSongFragment.event1033(messageEvent);
|
||||
roomJukeboxFragment.event1005(messageEvent);
|
||||
break;
|
||||
case 1035:
|
||||
// singSongFragment.event1035(messageEvent);
|
||||
roomJukeboxFragment.event1035(messageEvent);
|
||||
break;
|
||||
case 1021:
|
||||
// singSongFragment.event1021(messageEvent);
|
||||
roomJukeboxFragment.event1021(messageEvent);
|
||||
break;
|
||||
case 1059:
|
||||
// singSongFragment.event1059(messageEvent);
|
||||
roomJukeboxFragment.event1059(messageEvent);
|
||||
break;
|
||||
case 1058:
|
||||
// singSongFragment.event1058(messageEvent);
|
||||
|
||||
@@ -36,6 +36,7 @@ import com.xscm.moduleutil.rtc.AgoraManager;
|
||||
import com.xscm.moduleutil.utils.ClickUtils;
|
||||
import com.xscm.moduleutil.utils.ImageUtils;
|
||||
import com.xscm.moduleutil.utils.SpUtil;
|
||||
import com.xscm.moduleutil.widget.RoomFriendshipWheatView;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@@ -259,6 +260,7 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
// 设置弹出视图中的点击事件
|
||||
setPopupMenuClickListener(popupView, null);
|
||||
}
|
||||
|
||||
private void showPopupMenu(View anchorView) {
|
||||
if (popupWindow != null && !popupWindow.isShowing()) {
|
||||
// 获取锚点视图的坐标
|
||||
@@ -408,7 +410,7 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
}
|
||||
|
||||
String userId = String.valueOf(roomInfoResp.getSinger_info().getSong_info().getSinger_user_id());
|
||||
if (userId.equals(SpUtil.getUserId()+"")){
|
||||
if (userId.equals(SpUtil.getUserId() + "")) {
|
||||
upMike(true);
|
||||
}
|
||||
if (mBinding.wvZc.getUserId().equals(userId)) {
|
||||
@@ -435,7 +437,7 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
}
|
||||
|
||||
}
|
||||
if (mBinding.wvZc.getUserId()!=null && !mBinding.wvZc.getUserId().equals("0") && !mBinding.wvZc.getUserId().equals("") && mBinding.wvZc.getUserId().equals(SpUtil.getUserId()+"")) {
|
||||
if (mBinding.wvZc.getUserId() != null && !mBinding.wvZc.getUserId().equals("0") && !mBinding.wvZc.getUserId().equals("") && mBinding.wvZc.getUserId().equals(SpUtil.getUserId() + "")) {
|
||||
mBinding.imQg.setVisibility(VISIBLE);
|
||||
}
|
||||
}
|
||||
@@ -612,7 +614,7 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
temp.setCharm("");
|
||||
temp.setDress("");
|
||||
dataList.set(fromIndex, temp);
|
||||
adapter.notifyDataSetChanged();
|
||||
adapter.notifyItemChanged(fromIndex);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -635,7 +637,8 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
// 更新数据并通知适配器
|
||||
adapter.getData().clear();
|
||||
adapter.getData().addAll(dataList);
|
||||
adapter.notifyDataSetChanged();
|
||||
adapter.notifyItemChanged(fromIndex);
|
||||
adapter.notifyItemChanged(toIndex);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -659,7 +662,7 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
ImageUtils.loadHead(messageEvent.getText().getNext_song_info().getSinger_avatar(), mBinding.ciGsAva);
|
||||
mBinding.tvGsName.setText(messageEvent.getText().getNext_song_info().getSinger_nickname());
|
||||
roomInfoResp.getSinger_info().setNext_song_info(messageEvent.getText().getNext_song_info());
|
||||
}else {
|
||||
} else {
|
||||
mBinding.guestContainer.setVisibility(View.GONE);
|
||||
}
|
||||
}
|
||||
@@ -682,7 +685,7 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
mBinding.tvNetName.setText("老板");
|
||||
songId = messageEvent.getText().getSong_info().getId();
|
||||
String userId = String.valueOf(messageEvent.getText().getSong_info().getSinger_user_id());
|
||||
if (userId.equals(SpUtil.getUserId()+"")){
|
||||
if (userId.equals(SpUtil.getUserId() + "")) {
|
||||
upMike(true);
|
||||
}
|
||||
|
||||
@@ -699,7 +702,7 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
}
|
||||
adapter.notifyDataSetChanged();
|
||||
}
|
||||
}else {
|
||||
} else {
|
||||
setUserAvaSize(32);
|
||||
mBinding.ciUserAva.setImageResource(R.mipmap.microphone);
|
||||
mBinding.tvPerformerName.setVisibility(VISIBLE);
|
||||
@@ -720,10 +723,95 @@ public class RoomJukeboxFragment extends BaseMvpFragment<JukeboxPresenter, Fragm
|
||||
}
|
||||
|
||||
// TODO: 2025/11/22 当在演唱位的时候,显示麦克风,当上麦的时候,也展示麦克风,
|
||||
private void upMike(boolean isBool){
|
||||
private void upMike(boolean isBool) {
|
||||
if (getActivity() != null) {
|
||||
// 假设Activity有获取麦位数据的方法
|
||||
((RoomActivity) getActivity()).setrlMic(isBool);
|
||||
}
|
||||
}
|
||||
|
||||
public void event1035(RoomMessageEvent message) {
|
||||
List<RoomPitBean> dataList = adapter.getData();
|
||||
|
||||
if (mBinding.wvZc.getUserId().equals(message.getText().getFromUserInfo().getUser_id() + "")) {
|
||||
RoomPitBean roomPitBean = mBinding.wvZc.pitBean;
|
||||
roomPitBean.setNickname(message.getText().getFromUserInfo().getNickname());
|
||||
roomPitBean.setDress(message.getText().getFromUserInfo().getDress());
|
||||
roomPitBean.setAvatar(message.getText().getFromUserInfo().getAvatar());
|
||||
mBinding.wvZc.setData(roomPitBean);
|
||||
}
|
||||
|
||||
for (int i = 0; i < dataList.size(); i++) {
|
||||
RoomPitBean roomPitBean2 = dataList.get(i);
|
||||
if (roomPitBean2.getUser_id().equals(message.getText().getFromUserInfo().getUser_id() + "")) {
|
||||
dataList.set(i, roomPitBean);
|
||||
adapter.notifyItemChanged(i);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void event1021(RoomMessageEvent messageEvent) {
|
||||
if (mBinding.wvZc.pitBean != null) {
|
||||
mBinding.wvZc.setCharm("0");
|
||||
}
|
||||
|
||||
List<RoomPitBean> dataList = adapter.getData();
|
||||
for (int i = 0; i < dataList.size(); i++) {
|
||||
RoomPitBean roomPitBean2 = dataList.get(i);
|
||||
roomPitBean2.setCharm("0");
|
||||
adapter.notifyItemChanged(adapter.getData().indexOf(roomPitBean2));
|
||||
}
|
||||
}
|
||||
|
||||
/// 1005
|
||||
public void event1005(RoomMessageEvent message) {
|
||||
// 检查是否有多个用户信息
|
||||
if (message.getText().getToUserInfos() != null && !message.getText().getToUserInfos().isEmpty()) {
|
||||
// 处理多个用户的情况
|
||||
for (UserInfo userOnlineStatusBean : message.getText().getToUserInfos()) {
|
||||
updateCharmForUser(userOnlineStatusBean);
|
||||
}
|
||||
} else {
|
||||
// 处理单个用户的情况
|
||||
UserInfo toUserInfo = message.getText().getToUserInfo();
|
||||
if (toUserInfo != null) {
|
||||
updateCharmForUser(toUserInfo);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新单个用户的魅力值
|
||||
*
|
||||
* @param userInfo 用户信息
|
||||
*/
|
||||
private void updateCharmForUser(UserInfo userInfo) {
|
||||
String userId = String.valueOf(userInfo.getUser_id());
|
||||
String charm = userInfo.getCharm();
|
||||
if (mBinding.wvZc.getUserId()!=null && mBinding.wvZc.getUserId().equals(userId)) {
|
||||
mBinding.wvZc.setCharm(charm);
|
||||
}
|
||||
// 更新麦位列表中的魅力值
|
||||
for (RoomPitBean pitBean : adapter.getData()) {
|
||||
if (pitBean.getUser_id().equals(userId))
|
||||
pitBean.setCharm(charm);
|
||||
adapter.notifyItemChanged(adapter.getData().indexOf(pitBean));
|
||||
}
|
||||
}
|
||||
|
||||
// TODO: 2025/11/22 清除个人魅力
|
||||
public void event1059(RoomMessageEvent message) {
|
||||
|
||||
String userId = message.getText().getUser_id();
|
||||
if (mBinding.wvZc.getUserId()!=null &&mBinding.wvZc.getUserId().equals(userId)) {
|
||||
mBinding.wvZc.setCharm("0");
|
||||
}
|
||||
List<RoomPitBean> dataList = adapter.getData();
|
||||
for (int i = 0; i < dataList.size(); i++) {
|
||||
RoomPitBean roomPitBean2 = dataList.get(i);
|
||||
if (roomPitBean2.getUser_id().equals(userId))
|
||||
roomPitBean2.setCharm("0");
|
||||
adapter.notifyItemChanged(adapter.getData().indexOf(roomPitBean2));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -143,6 +143,13 @@
|
||||
android:elevation="2dp"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<include
|
||||
android:id="@+id/room_cp_view"
|
||||
layout="@layout/room_cp_vip_view"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:visibility="gone" />
|
||||
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:id="@+id/main_content_container"
|
||||
|
||||
Reference in New Issue
Block a user