我有一个对话框,当我按下按钮时我无法关闭这是我的代码,我相信这是用于 if 循环的,但我需要它在这种情况下使其成为现实,有什么想法可以帮助我吗?
\n@Composable\n fun PopupWindowDialog(\n parentUiState: ParentHomeUiState,\n) {\n val openDialog = remember { mutableStateOf(false) }\n var sliderPosition by remember { mutableStateOf(0f) }\n\n if (!parentUiState.showInAppFeedback){\n openDialog.value = true\n }\n val recommend = sliderPosition.toInt()\n Column(\n ) {\n Box {\n if (openDialog.value) {\n Dialog(\n onDismissRequest = { openDialog.value = false },\n properties = DialogProperties(),\n ){\n Box(\n Modifier\n .fillMaxWidth()\n .fillMaxHeight()\n //.padding(vertical = 70.dp, horizontal = 10.dp)\n .padding(vertical = 70.dp )\n .background(Color.White, RoundedCornerShape(10.dp))\n //.border(1.dp, color = Color.Black, RoundedCornerShape(20.dp))\n .border(1.dp, color = Color.White, RoundedCornerShape(20.dp))\n …Run Code Online (Sandbox Code Playgroud) android kotlin android-jetpack-compose compose-recomposition
我有一个文本输入,它只接受可被 500 个示例 1000、1500、2000、2500 3000 等整除的任何数字。如果用户写 12263 它应该四舍五入到 12000 如果用户写 12789 它应该四舍五入到 12500
我有这个代码,但它根本不起作用,在某些数字上工作正常,但在其他数字上它只是转到最大数字
vPayrollBureauMaxOffer:是可以接受的最大数字我从 api vPayrollAmount:是用户在 textinput 中写入的金额 3000 是可接受的最小值,如果用户写的数字小于 3000,它应该更改为 3000
这是我的代码
const validatePayroll = () => {
if(vPayrollAmount <= 3000){
return setvPayrollAmount((3000));
}
if(vPayrollAmount >= vPayrollBureauMaxOffer){
return setvPayrollAmount(vPayrollBureauMaxOffer.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ','));
}
if((vPayrollAmount >= 3000) && (vPayrollAmount <= vPayrollBureauMaxOffer)){
return setvPayrollAmount(Math.floor(vPayrollAmount / 500.0) * 500.0);
}
};
<TextInput
style={styles.inputs}
placeholder={`${vPayrollAmount.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',')}`}
placeholderTextColor={theme.SECONDARY_TEXT_COLOR}
keyboardType={'numeric'}
underlineColorAndroid="transparent"
autoCorrect={false}
autoCapitalize="characters"
value={vPayrollAmount}
onBlur={() => validatePayroll(vPayrollAmount)}
onChangeText={setvPayrollAmount}
/>
Run Code Online (Sandbox Code Playgroud)