Merge branch 'habu_3.3.1/optimize' into habu_3.3.1/test

# Conflicts:
#	app/src/main/java/com/yizhuan/habu/ui/setting/SettingActivity.kt
This commit is contained in:
Max
2023-11-17 10:46:35 +08:00
5 changed files with 65 additions and 27 deletions

View File

@@ -42,7 +42,8 @@ import java.io.File
* 设置页
* Created by wushaocheng on 2023/2/1.
*/
class SettingActivity : BaseViewBindingActivity<ActivitySettingBinding>(), View.OnClickListener,ILog {
class SettingActivity : BaseViewBindingActivity<ActivitySettingBinding>(), View.OnClickListener,
ILog {
override fun init() {
EventBus.getDefault().register(this)
initWhiteTitleBar(ResUtil.getString(R.string.ui_setting_settingactivity_01))
@@ -219,8 +220,10 @@ class SettingActivity : BaseViewBindingActivity<ActivitySettingBinding>(), View.
// RedPackageOpenDialog2().show(this)
// val json = "{\"first\":3,\"second\":32,\"data\":{\"recvUserUid\":2735,\"recvUserAvatar\":\"https://img.pekolive.com/default_avatar.png\",\"recvUserNick\":\"66丢丢丢丢丢多多多的hhhh\",\"sendUserNick\":\"11的ass\",\"sendUserAvatar\":\"http://beta.img.pekolive.com/Fk7aur-1RBqKXC-qqBwMTjivZ3lV?imageslim\",\"sendUserUid\":2737,\"giftUrl\":\"http://beta.img.pekolive.com/Fn6h_gPFD5MwA-Ql_kcWqNpKp0JM?imageslim\",\"giftName\":\"幽靈糖果\",\"giftId\":2075,\"giftNum\":${Random.nextInt(1,1000)},\"giftGolds\":33440,\"notifyStaySecond\":5,\"isHomeShow\":true,\"isSkipRoom\":true,\"isFullScreen\":false,\"isSendMsg\":false,\"roomUid\":2737,\"roomErbanNo\":11,\"roomTitle\":\"11的工会\",\"levelNum\":${Random.nextInt(1,4)}}}"
// onReceivedNimBroadcastMessage(json)
// val json = "{\"first\":85,\"second\":855,\"data\":{\"nick\":\"66丢丢丢丢丢多多多的hhhh\",\"preVipName\":\"子爵\",\"floatPic\":\"https://image.hfighting.com/Fq3JtbK2acO3FN-3vWZo8ldtHfse\",\"uid\":2735,\"currVipName\":\"侯爵\",\"erbanNo\":66,\"roomUid\":2734,\"avatar\":\"https://img.pekolive.com/default_avatar.png\",\"currVipLevel\":5}}"
// onReceivedNimBroadcastMessage(json)
CommonWebViewActivity.start(this,"http://192.168.0.19:5500/#/Rank")
// CommonWebViewActivity.start(this,"http://192.168.0.19:5500/#/Rank")
val json =
"{\"first\":85,\"second\":855,\"data\":{\"nick\":\"66丢丢丢丢丢多多多的hhhh\",\"preVipName\":\"子爵\",\"floatPic\":\"https://image.hfighting.com/Fq3JtbK2acO3FN-3vWZo8ldtHfse\",\"uid\":2735,\"currVipName\":\"侯爵\",\"erbanNo\":66,\"roomUid\":2734,\"avatar\":\"https://img.pekolive.com/default_avatar.png\",\"currVipLevel\":5}}"
onReceivedNimBroadcastMessage(json)
// CommonWebViewActivity.start(this,"https://api.anan.chat/anan_vestBag/modules/myincome/index.html#/DiamondLog")
}
}

View File

@@ -16,6 +16,7 @@ import android.widget.FrameLayout;
import androidx.annotation.NonNull;
import com.chuhai.utils.ServiceTime;
import com.opensource.svgaplayer.SVGADrawable;
import com.opensource.svgaplayer.SVGADynamicEntity;
import com.opensource.svgaplayer.SVGAImageView;
@@ -41,6 +42,8 @@ public class AllServiceVipLevelUPDialog extends BaseDialog {
private final VipMessageInfo vipMessageInfo;
private DialogVipAllServiceLevelUpBinding binding;
private long startTime = 0;
private int frameCount = 0;
public AllServiceVipLevelUPDialog(Context context, @NonNull VipMessageInfo vipMessageInfo) {
super(context, R.style.FullScreenDialog);
@@ -77,7 +80,7 @@ public class AllServiceVipLevelUPDialog extends BaseDialog {
.append(ResUtil.getString(R.string.widget_dialog_allserviceviplevelupdialog_01), new ForegroundColorSpan(Color.WHITE))
.append("-", new CircleImageSpan(new ColorDrawable(Color.TRANSPARENT), vipMessageInfo.getAvatar(), 50, 50))
.append(" " + StringExtensionKt.sub(vipMessageInfo.getNick(), 6) + " ", new ForegroundColorSpan(getContext().getResources().getColor(R.color.notice_nick)))
.append(ResUtil.getString(R.string.widget_dialog_allserviceviplevelupdialog_02) + vipMessageInfo.getCurrVipName(), new ForegroundColorSpan(Color.WHITE)+"!");
.append(ResUtil.getString(R.string.widget_dialog_allserviceviplevelupdialog_02) + vipMessageInfo.getCurrVipName(), new ForegroundColorSpan(Color.WHITE) + "!");
SVGAImageView svgaImageView = new SVGAImageView(getContext());
svgaImageView.setLoops(1);
@@ -87,7 +90,19 @@ public class AllServiceVipLevelUPDialog extends BaseDialog {
svgaImageView.setCallback(new SimpleSvgaCallback() {
@Override
public void onFinished() {
closeSelf();
long offset = ServiceTime.INSTANCE.getTime() - startTime;
if (offset < 6000) {
int centerFrame = frameCount / 2;
if (centerFrame > 0) {
// 目前的SVGA资源最后一帧是半透明的这里强制跳到中间帧最大程度避免这种情况
svgaImageView.stepToFrame(centerFrame, false);
}
svgaImageView.postDelayed(() -> {
closeSelf();
}, 6000 - offset);
} else {
closeSelf();
}
}
});
binding.flSvgaVipNotify.addView(svgaImageView);
@@ -95,6 +110,8 @@ public class AllServiceVipLevelUPDialog extends BaseDialog {
SVGAParser.Companion.shareParser().decodeFromURL(new URL(vipMessageInfo.getFloatPic()), new SVGAParser.ParseCompletion() {
@Override
public void onComplete(@NonNull SVGAVideoEntity svgaVideoEntity) {
frameCount = svgaVideoEntity.getFrames();
startTime = ServiceTime.INSTANCE.getTime();
SVGADynamicEntity dynamicEntity = new SVGADynamicEntity();
TextPaint textPaint = new TextPaint();
textPaint.setColor(Color.WHITE);//字体颜色

View File

@@ -7,8 +7,8 @@
android:orientation="horizontal">
<TextView
android:id="@+id/btn_cancel"
android:layout_width="110dp"
android:layout_height="@dimen/dp_38"
android:layout_width="105dp"
android:layout_height="35dp"
android:gravity="center"
android:text="@string/cancel"
android:textColor="@color/color_B3B3C3"

View File

@@ -3,6 +3,7 @@ package com.yizhuan.habu.module_hall.hall.fragment
import android.content.Context
import android.os.Bundle
import android.text.Editable
import android.text.SpannableString
import android.text.TextUtils
import android.text.TextWatcher
import android.view.KeyEvent
@@ -16,6 +17,7 @@ import com.chad.library.adapter.base.BaseQuickAdapter
import com.yizhuan.habu.R
import com.yizhuan.habu.base.BaseViewBindingFragment
import com.yizhuan.habu.common.EmptyViewHelper
import com.yizhuan.habu.common.widget.dialog.DialogManager
import com.yizhuan.habu.databinding.FragmentAssociationRoomBinding
import com.yizhuan.habu.module_hall.hall.activity.ModuleHallActivity
import com.yizhuan.habu.module_hall.hall.adapter.AssociationRoomAdapter
@@ -39,8 +41,8 @@ class AssociationRoomFragment : BaseViewBindingFragment<FragmentAssociationRoomB
}
}
private var associationRoomAdapter: AssociationRoomAdapter ?= null
private var rvDelegate: RVDelegate<HallListInfo> ?= null
private var associationRoomAdapter: AssociationRoomAdapter? = null
private var rvDelegate: RVDelegate<HallListInfo>? = null
private var list: MutableList<HallListInfo> = ArrayList()
@@ -51,7 +53,7 @@ class AssociationRoomFragment : BaseViewBindingFragment<FragmentAssociationRoomB
if (!TextUtils.isEmpty(binding.etSearch.text.toString())) {
val hallList = list
val list = hallList.filter {
it.hallName.contains(binding.etSearch.text.toString()) || it.hallId.toString()
it.hallName.contains(binding.etSearch.text.toString()) || it.ownerErbanNo.toString()
.contains(binding.etSearch.text.toString())
}
if (list.isEmpty()) {
@@ -124,25 +126,19 @@ class AssociationRoomFragment : BaseViewBindingFragment<FragmentAssociationRoomB
}
if (it.hallBtnStatus == 3) {
NimP2PMessageActivity.startRecord(
mContext, bean.hallMessageUid.toString(),
bean.hallRecordId.toString()
mContext, it.hallMessageUid.toString(),
it.hallRecordId.toString()
)
return@let
}
dialogManager.showProgressDialog(context)
HallModel.get().applyJoinHall(it.hallId)
.compose(RxHelper.bindFragment(this))
.subscribe(object : BeanObserver<String?>() {
override fun onErrorMsg(error: String) {
dialogManager.dismissDialog()
toast(error)
}
override fun onSuccess(s: String) {
dialogManager.dismissDialog()
it.hallBtnStatus = 2
associationRoomAdapter?.notifyItemChanged(position)
toast(getString(R.string.apply_success_wait_to_join_room))
dialogManager.showOkCancelWithTitleDialog(ResUtil.getString(R.string.join_organization_tips),
it.hallName ?: "",
ResUtil.getString(R.string.join_organization_ok),
ResUtil.getString(R.string.join_organization_no),
object : DialogManager.OkCancelDialogListener {
override fun onCancel() {}
override fun onOk() {
applyJoin(it, position)
}
})
}
@@ -167,6 +163,25 @@ class AssociationRoomFragment : BaseViewBindingFragment<FragmentAssociationRoomB
associationViewModel.getHallList()
}
private fun applyJoin(item: HallListInfo, position: Int) {
dialogManager.showProgressDialog(context)
HallModel.get().applyJoinHall(item.hallId)
.compose(RxHelper.bindFragment(this))
.subscribe(object : BeanObserver<String?>() {
override fun onErrorMsg(error: String) {
dialogManager.dismissDialog()
toast(error)
}
override fun onSuccess(s: String) {
dialogManager.dismissDialog()
item.hallBtnStatus = 2
associationRoomAdapter?.notifyItemChanged(position)
toast(getString(R.string.apply_success_wait_to_join_room))
}
})
}
private fun hideSoftInput() {
val imm = context?.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager
imm.hideSoftInputFromWindow(

View File

@@ -27,4 +27,7 @@
<string name="lu_hteam_has_mute_num">已禁言人數 : %d人</string>
<string name="lu_hteam_manager_num">群管理人數 : %d人</string>
<string name="join_organization_tips">確認加入公會</string>
<string name="join_organization_ok"></string>
<string name="join_organization_no"></string>
</resources>