密码房部分,幸运抽奖部分。
This commit is contained in:
@@ -0,0 +1,68 @@
|
||||
package com.xscm.modulemain.dialog
|
||||
|
||||
import android.content.Context
|
||||
import android.view.Gravity
|
||||
import android.view.ViewGroup
|
||||
import com.blankj.utilcode.util.ScreenUtils
|
||||
import com.blankj.utilcode.util.ToastUtils
|
||||
import com.xscm.modulemain.R
|
||||
import com.xscm.modulemain.databinding.DialogEditRoomPwdLayoutBinding
|
||||
import com.xscm.moduleutil.widget.dialog.BaseDialog
|
||||
|
||||
class DialogEditRoomPwd(context: Context) : BaseDialog<DialogEditRoomPwdLayoutBinding>(context) {
|
||||
|
||||
init {
|
||||
// 设置对话框的宽度为屏幕宽度
|
||||
window?.setLayout(
|
||||
(ScreenUtils.getScreenWidth() * 315f / 375).toInt(),
|
||||
ViewGroup.LayoutParams.WRAP_CONTENT
|
||||
)
|
||||
setCancelable(false)
|
||||
setCanceledOnTouchOutside(false)
|
||||
}
|
||||
|
||||
override fun getLayoutId(): Int {
|
||||
return R.layout.dialog_edit_room_pwd_layout
|
||||
}
|
||||
|
||||
private var onDialogDismissListener:OnDialogDismissListener? = null
|
||||
|
||||
override fun initView() {
|
||||
mBinding.ivClose.setOnClickListener {
|
||||
onDialogDismissListener?.onDialogDismiss()
|
||||
dismiss()
|
||||
}
|
||||
|
||||
mBinding.tvCancel.setOnClickListener {
|
||||
onDialogDismissListener?.onDialogDismiss()
|
||||
dismiss()
|
||||
}
|
||||
|
||||
mBinding.tvConfirm.setOnClickListener {
|
||||
if (mBinding.etRoomPwd.text.toString().trim()
|
||||
.isNotEmpty() && mBinding.etRoomPwd.text.toString().trim().length == 4
|
||||
) {
|
||||
onDialogDismissListener?.onPwdListener(mBinding.etRoomPwd.text.toString().trim())
|
||||
dismiss()
|
||||
} else {
|
||||
ToastUtils.showShort("请输入正确密码!")
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
override fun initData() {
|
||||
|
||||
}
|
||||
|
||||
fun show(onDialogDismissListener: OnDialogDismissListener) {
|
||||
super.show()
|
||||
this.onDialogDismissListener = onDialogDismissListener
|
||||
}
|
||||
|
||||
interface OnDialogDismissListener {
|
||||
fun onPwdListener(pwd: String)
|
||||
|
||||
fun onDialogDismiss()
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,136 @@
|
||||
package com.xscm.modulemain.dialog
|
||||
|
||||
import android.content.Context
|
||||
import android.view.Gravity
|
||||
import android.view.View
|
||||
import com.blankj.utilcode.util.ToastUtils
|
||||
import com.chad.library.adapter.base.BaseQuickAdapter
|
||||
import com.chad.library.adapter.base.BaseViewHolder
|
||||
import com.opensource.svgaplayer.SVGACallback
|
||||
import com.opensource.svgaplayer.SVGAParser
|
||||
import com.opensource.svgaplayer.SVGAVideoEntity
|
||||
import com.xscm.modulemain.R
|
||||
import com.xscm.modulemain.databinding.DialogLuckyDrawLayoutBinding
|
||||
import com.xscm.moduleutil.widget.dialog.BaseDialog
|
||||
|
||||
class DialogLuckyDraw(context: Context) : BaseDialog<DialogLuckyDrawLayoutBinding>(context) {
|
||||
|
||||
init {
|
||||
window?.apply {
|
||||
setGravity(Gravity.BOTTOM)
|
||||
}
|
||||
|
||||
setCancelable(false)
|
||||
setCanceledOnTouchOutside(false)
|
||||
}
|
||||
|
||||
private var isLottery = false
|
||||
|
||||
override fun getLayoutId(): Int {
|
||||
return R.layout.dialog_lucky_draw_layout
|
||||
}
|
||||
|
||||
override fun initView() {
|
||||
mBinding.ivClose.setOnClickListener {
|
||||
dismiss()
|
||||
}
|
||||
|
||||
mBinding.iv1.setOnClickListener {
|
||||
lottery(1)
|
||||
}
|
||||
|
||||
mBinding.iv10.setOnClickListener {
|
||||
lottery(10)
|
||||
}
|
||||
|
||||
mBinding.iv100.setOnClickListener {
|
||||
lottery(100)
|
||||
}
|
||||
mBinding.ivOnOrOff.tag = 1
|
||||
mBinding.ivOnOrOff.setOnClickListener {
|
||||
if (mBinding.ivOnOrOff.tag == 1) {
|
||||
mBinding.ivOnOrOff.tag = 0
|
||||
mBinding.ivOnOrOff.setImageResource(R.mipmap.icon_lucky_donghua_pre)
|
||||
} else {
|
||||
mBinding.ivOnOrOff.tag = 1
|
||||
mBinding.ivOnOrOff.setImageResource(R.mipmap.icon_lucky_donghua_nor)
|
||||
}
|
||||
}
|
||||
}
|
||||
//913073443 13837096053
|
||||
private fun lottery(count: Int) {
|
||||
if (isLottery) {
|
||||
ToastUtils.showShort("正在抽取中...")
|
||||
return
|
||||
}
|
||||
isLottery = true
|
||||
|
||||
if (mBinding.ivOnOrOff.tag == 1) {
|
||||
startAnim()
|
||||
}
|
||||
|
||||
fetchLotteryResult(count)
|
||||
}
|
||||
|
||||
override fun initData() {
|
||||
|
||||
}
|
||||
|
||||
|
||||
private fun fetchLotteryResult(count: Int) {
|
||||
|
||||
}
|
||||
|
||||
|
||||
private fun showLotteryResult() {
|
||||
|
||||
}
|
||||
|
||||
private fun startAnim() {
|
||||
mBinding.svgaAnim.visibility = View.VISIBLE
|
||||
// 停止并清除当前动画
|
||||
mBinding.svgaAnim.stopAnimation()
|
||||
mBinding.svgaAnim.clear()
|
||||
// 使用SVGAParser重新解析
|
||||
val parser = SVGAParser(context)
|
||||
parser.decodeFromAssets("room_wish_crystal_animation.svga",
|
||||
object : SVGAParser.ParseCompletion {
|
||||
override fun onComplete(videoItem: SVGAVideoEntity) {
|
||||
mBinding.svgaAnim.setVideoItem(videoItem)
|
||||
mBinding.svgaAnim.clearsAfterStop = true
|
||||
|
||||
// 设置回调
|
||||
mBinding.svgaAnim.callback = object : SVGACallback {
|
||||
override fun onFinished() {
|
||||
isLottery = false
|
||||
mBinding.svgaAnim.visibility = View.GONE
|
||||
mBinding.ivSvgaBg.visibility = View.VISIBLE
|
||||
}
|
||||
|
||||
override fun onPause() {}
|
||||
override fun onRepeat() {}
|
||||
override fun onStep(frame: Int, percentage: Double) {
|
||||
if (frame == 1) {
|
||||
mBinding.ivSvgaBg.visibility = View.INVISIBLE
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 开始动画
|
||||
mBinding.svgaAnim.startAnimation()
|
||||
}
|
||||
|
||||
override fun onError() {
|
||||
// 处理错误
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
class itemAdapter : BaseQuickAdapter<String, BaseViewHolder>(R.layout.item_lottery_gift_layout) {
|
||||
override fun convert(helper: BaseViewHolder, item: String) {
|
||||
helper.setText(R.id.tv_name, item)
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -211,6 +211,11 @@ public class RoomOnlineDialogFragment extends BaseMvpDialogFragment<RoomPresente
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void beforeJoinRoomCheck(Boolean isJoinRoom, int errorCode, String roomId) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void showPasswordDialog() {
|
||||
|
||||
|
||||
Reference in New Issue
Block a user