一直试图解决这个问题但无法解决。这是 udacity 课程,我尝试使用挂起意图创建通知,但挂起意图可变存在问题,我尝试用这种方式
视图模型
private val REQUEST_CODE = 0
private val TRIGGER_TIME = "TRIGGER_AT"
private val minute: Long = 60_000L
private val second: Long = 1_000L
private val timerLengthOptions: IntArray
private val notifyPendingIntent: PendingIntent
private val alarmManager = app.getSystemService(Context.ALARM_SERVICE) as AlarmManager
private var prefs =
app.getSharedPreferences("com.shivaConsulting.androidProjects.kotlinnotificatons", Context.MODE_PRIVATE)
private val notifyIntent = Intent(app, AlarmReciever::class.java)
private val _timeSelection = MutableLiveData<Int>()
val timeSelection: LiveData<Int>
get() = _timeSelection
private val _elapsedTime = MutableLiveData<Long>()
val elapsedTime: LiveData<Long>
get() = _elapsedTime
private var _alarmOn = MutableLiveData<Boolean>() …Run Code Online (Sandbox Code Playgroud) mutablestate我有一个ViewModel正在尝试在可组合项中设置和访问的内容。当我使用委托属性时,remember它正在工作,但是在 viewModel 中创建它并在 compose 中访问它之后,变量的状态为空如何在 viewModel 中使用状态
当状态位于组合内部时,一切工作正常
var mSelectedText by remember { mutableStateOf("") }
Run Code Online (Sandbox Code Playgroud)
但是当我从 viewModel 更改中使用它并设置我的 OutlinedTextField value = mainCatTitle 和 onValueChange = {mainCatTitle = it} 时,所选标题不会显示在 OutlinedTextField 中为空
private val _mainCatTitle = mutableStateOf("")
val mainCatTitle: State<String> = _mainCatTitle
Run Code Online (Sandbox Code Playgroud)
我的可组合项
var mSelectedText by remember { mutableStateOf("") }
var mainCatTitle = viewModel.mainCatTitle.value
Column(Modifier.padding(20.dp)) {
OutlinedTextField(
value = mainCatTitle,
onValueChange = { mainCatTitle = it },
modifier = Modifier
.fillMaxWidth()
.onGloballyPositioned { coordinates ->
mTextFieldSize …Run Code Online (Sandbox Code Playgroud) android kotlin android-jetpack-compose compose-recomposition
我有几个文本字段和按钮,用于打开底部抽屉。如何删除底部栏占用的空白空间我不想要空白空间,以便我的文本字段靠近我的按钮。我尝试使用修改器,但降低高度后,底部栏在屏幕中可见。是否可以删除多余的空间
我的屏幕
\n Scaffold(scaffoldState = scaffoldState) {\n Column(Modifier.padding(16.dp)) {\n\n BottomDrawerSample()\n\n OutlinedTextField(value = text,\n onValueChange = { text = it },\n label = { Text(text = "Title") },\n singleLine = true)\n\n OutlinedTextField(value = text,\n onValueChange = { text = it },\n label = { Text(text = "Brand") },\n singleLine = true)\n }\n }\nRun Code Online (Sandbox Code Playgroud)\n底部抽屉
\n@Composable\n@OptIn(ExperimentalMaterialApi::class)\nfun BottomDrawerSample() {\nval (gesturesEnabled, toggleGesturesEnabled) = remember { mutableStateOf(true) }\nval scope = rememberCoroutineScope()\nColumn {\n Row(\n modifier = Modifier\n .fillMaxWidth()\n .toggleable(\n value = gesturesEnabled,\n onValueChange …Run Code Online (Sandbox Code Playgroud)