diff --git a/MainModule/src/main/java/com/xscm/modulemain/activity/room/fragment/RoomMentorShipFragment.kt b/MainModule/src/main/java/com/xscm/modulemain/activity/room/fragment/RoomMentorShipFragment.kt index b621daf4..0f9f2ea5 100644 --- a/MainModule/src/main/java/com/xscm/modulemain/activity/room/fragment/RoomMentorShipFragment.kt +++ b/MainModule/src/main/java/com/xscm/modulemain/activity/room/fragment/RoomMentorShipFragment.kt @@ -421,8 +421,9 @@ class RoomMentorShipFragment(var mRoomInfo: RoomInfoResp?) : if (dialogMentorShip == null) { dialogMentorShip = DialogMentorShip(ActivityUtils.getTopActivity()) } + ActivityUtils.getTopActivity() dialogMentorShip?.setClickable(true) - dialogMentorShip?.show(list, mSignPitBean, walletBean, + dialogMentorShip?.show(mRoomId,list, mSignPitBean, walletBean, object : DialogMentorShip.OnItemClickListener { override fun onItemClick(coin: String) { dialogMentorShip?.setClickable(false) diff --git a/MainModule/src/main/java/com/xscm/modulemain/dialog/DialogMentorShip.kt b/MainModule/src/main/java/com/xscm/modulemain/dialog/DialogMentorShip.kt index d00ad2e6..feb60e7f 100644 --- a/MainModule/src/main/java/com/xscm/modulemain/dialog/DialogMentorShip.kt +++ b/MainModule/src/main/java/com/xscm/modulemain/dialog/DialogMentorShip.kt @@ -4,6 +4,8 @@ import android.content.Context import android.view.Gravity import android.view.HapticFeedbackConstants import android.view.ViewGroup +import androidx.fragment.app.FragmentActivity +import com.blankj.utilcode.util.ActivityUtils import com.chad.library.adapter.base.BaseQuickAdapter import com.chad.library.adapter.base.BaseViewHolder import com.tencent.qcloud.tuicore.util.ToastUtil @@ -12,6 +14,7 @@ import com.xscm.modulemain.databinding.DialogMentorShipLayoutBinding import com.xscm.modulemain.utils.VibrationUtils import com.xscm.moduleutil.bean.WalletBean import com.xscm.moduleutil.bean.room.RoomPitBean +import com.xscm.moduleutil.dialog.RechargeDialogFragment import com.xscm.moduleutil.utils.ImageUtils import com.xscm.moduleutil.widget.dialog.BaseDialog @@ -49,12 +52,21 @@ class DialogMentorShip(context: Context) : BaseDialog, mSignPitBean: RoomPitBean?, walletBean: WalletBean?, onItemClickListener: OnItemClickListener?) { + fun show(roomId:String,list: List, mSignPitBean: RoomPitBean?, walletBean: WalletBean?, onItemClickListener: OnItemClickListener?) { + + mBinding.tvRecharge.setOnClickListener { + RechargeDialogFragment.show( + roomId, + null, + (ActivityUtils.getTopActivity() as FragmentActivity).supportFragmentManager, + "0", + "0" + ) + } + if (isShowing){ mBinding.tvName.text = mSignPitBean?.nickname mBinding.tvWallet.text = walletBean?.coin diff --git a/animplayer/src/main/java/com/tencent/qgame/animplayer/AnimView.kt b/animplayer/src/main/java/com/tencent/qgame/animplayer/AnimView.kt index 3d9b0567..4330aebc 100644 --- a/animplayer/src/main/java/com/tencent/qgame/animplayer/AnimView.kt +++ b/animplayer/src/main/java/com/tencent/qgame/animplayer/AnimView.kt @@ -22,6 +22,7 @@ import android.os.Build import android.os.Handler import android.os.Looper import android.util.AttributeSet +import android.util.Log import android.view.TextureView import android.view.View import android.widget.FrameLayout @@ -126,8 +127,17 @@ open class AnimView @JvmOverloads constructor(context: Context, attrs: Attribute } override fun onSurfaceTextureSizeChanged(surface: SurfaceTexture, width: Int, height: Int) { - ALog.i(TAG, "onSurfaceTextureSizeChanged $width x $height") - player.onSurfaceTextureSizeChanged(width, height) + Log.i(TAG, "onSurfaceTextureSizeChanged $width x $height") +// player.onSurfaceTextureSizeChanged(width, height) + // 处理宽高为0的情况,使用TextureView的实际尺寸 + if (width == 0 || height == 0) { + val actualWidth = if (width == 0) innerTextureView?.width ?: width else width + val actualHeight = if (height == 0) innerTextureView?.height ?: height else height + Log.e(TAG, "使用实际尺寸: width=$actualWidth height=$actualHeight") + player.onSurfaceTextureSizeChanged(actualWidth, actualHeight) + } else { + player.onSurfaceTextureSizeChanged(width, height) + } } override fun onSurfaceTextureUpdated(surface: SurfaceTexture) { @@ -146,9 +156,18 @@ open class AnimView @JvmOverloads constructor(context: Context, attrs: Attribute } override fun onSurfaceTextureAvailable(surface: SurfaceTexture, width: Int, height: Int) { - ALog.i(TAG, "onSurfaceTextureAvailable width=$width height=$height") + Log.e(TAG, "onSurfaceTextureAvailable width=$width height=$height") this.surface = surface - player.onSurfaceTextureAvailable(width, height) + + // 处理宽高为0的情况,使用TextureView的实际尺寸 + if (width == 0 || height == 0) { + val actualWidth = if (width == 0) innerTextureView?.width ?: width else width + val actualHeight = if (height == 0) innerTextureView?.height ?: height else height + Log.e(TAG, "使用实际尺寸: width=$actualWidth height=$actualHeight") + player.onSurfaceTextureAvailable(actualWidth, actualHeight) + } else { + player.onSurfaceTextureAvailable(width, height) + } } override fun onSizeChanged(w: Int, h: Int, oldw: Int, oldh: Int) {