From d974ad35af0aa4585091303256dbe221fe04a1fb Mon Sep 17 00:00:00 2001 From: Runt <qingingrunt2010@qq.com> Date: Sat, 30 Aug 2025 17:43:48 +0000 Subject: [PATCH] 超出父容器 --- libmvi/src/main/java/com/runt/open/mvi/base/model/BaseViewModel.kt | 34 +++++++++++++++++++++++----------- 1 files changed, 23 insertions(+), 11 deletions(-) diff --git a/libmvi/src/main/java/com/runt/open/mvi/base/model/BaseViewModel.kt b/libmvi/src/main/java/com/runt/open/mvi/base/model/BaseViewModel.kt index 12fedd1..f8a1e09 100644 --- a/libmvi/src/main/java/com/runt/open/mvi/base/model/BaseViewModel.kt +++ b/libmvi/src/main/java/com/runt/open/mvi/base/model/BaseViewModel.kt @@ -5,9 +5,9 @@ import android.os.Build import android.provider.MediaStore import android.util.Log -import androidx.activity.ComponentActivity import androidx.core.content.FileProvider import androidx.lifecycle.ViewModel +import com.google.gson.Gson import com.runt.open.mvi.base.BaseActivity import com.runt.open.mvi.base.LayoutView import com.runt.open.mvi.data.LoadingState @@ -20,8 +20,11 @@ import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.asStateFlow import okhttp3.Callback +import okhttp3.MediaType.Companion.toMediaType import okhttp3.OkHttpClient import okhttp3.Request +import okhttp3.RequestBody +import okhttp3.RequestBody.Companion.toRequestBody import okhttp3.Response import java.io.File import java.io.FileInputStream @@ -57,7 +60,7 @@ TAG = javaClass.simpleName; } - fun getActivity(): ComponentActivity { + fun getActivity(): BaseActivity<LayoutView<BaseViewModel> , BaseViewModel> { return mActivity!!; } @@ -69,16 +72,18 @@ _isLoading.value = _isLoading.value.copy(isVisible = false); } - fun showDialog( title:String = "", message: String = "", confirmText:String = "确定", cancelText:String = "", - touchOutside:Boolean = true,//空白和系统返回 是否关闭 - showClose:Boolean = false,//显示关闭图标(默认不显示) - confirmDissmiss:Boolean = true,//点击确定是否关闭 - cancelDissmiss:Boolean = true,//点击取消是否关闭 - onDismissRequest : () -> Unit = {}, - onConfirmRequest : () -> Unit = {}, ){ - + fun showDialog( + title : String = "" , message : String = "" , confirmText : String = "确定" , cancelText : String = "" , + touchOutside : Boolean = true , //空白和系统返回 是否关闭 + showClose : Boolean = false , //显示关闭图标(默认不显示) + confirmDissmiss : Boolean = true , //点击确定是否关闭 + cancelDissmiss : Boolean = true , //点击取消是否关闭 + onDismissRequest : () -> Unit = {} , + onCancelRequest : () -> Unit = {} , + onConfirmRequest : () -> Unit = {} , + ){ _messageState.value = MessageState(title = title, message = message, touchOutside = touchOutside, showClose = showClose, confirmText = confirmText, - cancelText = cancelText, confirmDissmiss = confirmDissmiss, cancelDissmiss = cancelDissmiss, onDismissRequest = onDismissRequest, + cancelText = cancelText, confirmDissmiss = confirmDissmiss, cancelDissmiss = cancelDissmiss, onCancelRequest = onCancelRequest, onDismissRequest = onDismissRequest, onConfirmRequest = onConfirmRequest, setDismiss = messageSetDismiss); } @@ -250,6 +255,13 @@ }.subscribe(observer) } + fun createJsonBody(obj : Any) : RequestBody { + val mediaType = "application/json; charset=utf-8".toMediaType() + val json = if (obj is String) obj else Gson().toJson(obj) + val requestBody = json.toString().toRequestBody(mediaType) + return requestBody; + } + fun getFilePathFromUri(uri:Uri):String?{ var filePath = ""; var filePathColumn = arrayOf(MediaStore.Video.Media.DATA) -- Gitblit v1.9.1