群聊创建失败提示弹窗问题
This commit is contained in:
@@ -95,26 +95,15 @@ fun CreateGroupChatScreen() {
|
||||
systemUiController.setNavigationBarColor(Color.Transparent)
|
||||
}
|
||||
|
||||
Column(
|
||||
Box(
|
||||
modifier = Modifier
|
||||
.fillMaxSize()
|
||||
.background(AppColors.background)
|
||||
) {
|
||||
// 错误提示
|
||||
CreateGroupChatViewModel.errorMessage?.let { error ->
|
||||
Box(
|
||||
Column(
|
||||
modifier = Modifier
|
||||
.fillMaxWidth()
|
||||
.background(AppColors.error.copy(alpha = 0.1f))
|
||||
.padding(16.dp)
|
||||
.fillMaxSize()
|
||||
) {
|
||||
Text(
|
||||
text = error,
|
||||
color = AppColors.error,
|
||||
fontSize = 14.sp
|
||||
)
|
||||
}
|
||||
}
|
||||
StatusBarSpacer()
|
||||
|
||||
// 头部
|
||||
@@ -492,6 +481,38 @@ fun CreateGroupChatScreen() {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// 居中显示的错误提示弹窗
|
||||
CreateGroupChatViewModel.errorMessage?.let { error ->
|
||||
Box(
|
||||
modifier = Modifier
|
||||
.fillMaxSize()
|
||||
.padding(24.dp)
|
||||
) {
|
||||
Column(
|
||||
modifier = Modifier
|
||||
.fillMaxWidth()
|
||||
.align(Alignment.Center), // 在Box中居中对齐
|
||||
horizontalAlignment = Alignment.CenterHorizontally, // 水平居中
|
||||
verticalArrangement = Arrangement.Center // 垂直居中
|
||||
) {
|
||||
androidx.compose.material3.Card(
|
||||
modifier = Modifier
|
||||
.fillMaxWidth(0.8f),
|
||||
shape = RoundedCornerShape(8.dp)
|
||||
) {
|
||||
Text(
|
||||
text = error,
|
||||
modifier = Modifier
|
||||
.padding(16.dp)
|
||||
.fillMaxWidth(),
|
||||
color = Color.Red,
|
||||
fontSize = 14.sp,
|
||||
textAlign = androidx.compose.ui.text.style.TextAlign.Center
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -28,6 +28,7 @@ import com.tencent.imsdk.v2.V2TIMConversationResult
|
||||
import com.tencent.imsdk.v2.V2TIMManager
|
||||
import com.tencent.imsdk.v2.V2TIMMessage
|
||||
import com.tencent.imsdk.v2.V2TIMValueCallback
|
||||
import kotlinx.coroutines.delay
|
||||
import kotlinx.coroutines.flow.MutableStateFlow
|
||||
import kotlinx.coroutines.launch
|
||||
import kotlin.coroutines.suspendCoroutine
|
||||
@@ -59,16 +60,26 @@ object CreateGroupChatViewModel : ViewModel() {
|
||||
true
|
||||
} else {
|
||||
isLoading = false
|
||||
errorMessage = "创建群聊失败: ${response.message()}"
|
||||
val errorMsg = "创建群聊失败: ${response.message()}"
|
||||
showToast(errorMsg)
|
||||
false
|
||||
}
|
||||
} catch (e: Exception) {
|
||||
isLoading = false
|
||||
errorMessage = "创建群聊失败: ${e.message}"
|
||||
val errorMsg = "创建群聊失败: ${e.message}"
|
||||
showToast(errorMsg)
|
||||
false
|
||||
}
|
||||
}
|
||||
|
||||
private fun showToast(message: String) {
|
||||
errorMessage = message
|
||||
viewModelScope.launch {
|
||||
delay(3000)
|
||||
errorMessage = null
|
||||
}
|
||||
}
|
||||
|
||||
// 清除错误信息
|
||||
fun clearError() {
|
||||
errorMessage = null
|
||||
|
||||
Reference in New Issue
Block a user