我一直在尝试将此按钮设置在屏幕的左下方。任何人都可以找到更好的方法或建议修复此错误吗?

问题描述 投票:0回答:0
@Composable
fun LoginForm() {
    var username by remember { mutableStateOf("") }
    var password by remember { mutableStateOf("") }

    // Store the state of the bottom sheet
    var bottomSheetState = rememberModalBottomSheetState(initialValue = ModalBottomSheetValue.Hidden)

    val coroutineScope = rememberCoroutineScope()

    Column(
        modifier = Modifier.fillMaxSize(),
    ) {
        Box(modifier = Modifier.weight(1f)) {
            // The weight modifier is added to expand the height of the Box to fill the remaining height of the Column
            // This is necessary to push the buttons to the bottom of the screen
        }

        Box(  modifier = Modifier
            .fillMaxSize()
            .align(Alignment.BottomEnd)
        )

         {
            Button(
                onClick = {
                    coroutineScope.launch { bottomSheetState.show() }
                },
                modifier = Modifier.padding(16.dp)
            ) {
                Text("Login")
            }
        }

    // Define the bottom sheet content
        ModalBottomSheetLayout(
            sheetContent = {
                Column(
                    modifier = Modifier
                        .fillMaxWidth()
                        .padding(16.dp)
                ) {
                    OutlinedTextField(
                        value = username,
                        onValueChange = { username = it },
                        label = { Text("Username") },
                        modifier = Modifier.fillMaxWidth()
                    )
                    Spacer(modifier = Modifier.height(16.dp))
                    OutlinedTextField(
                        value = password,
                        onValueChange = { password = it },
                        label = { Text("Password") },
                        modifier = Modifier.fillMaxWidth()
                    )
                    Spacer(modifier = Modifier.height(16.dp))
                    Button(
                        onClick = { coroutineScope.launch { bottomSheetState.hide() } },
                        modifier = Modifier.align(Alignment.End)
                    ) {
                        Text("Login")
                    }
                }
            },
            sheetState = bottomSheetState,
            sheetShape = RoundedCornerShape(topStart = 16.dp, topEnd = 16.dp)
        ) {
            // This composable is the "background" that will be visible when the bottom sheet is open
            Box(
                modifier = Modifier.fillMaxSize(),
                contentAlignment = Alignment.BottomCenter
            ) {
                // Add any content you want to show in the background here
            }
        }


    }


}

这是一个应用程序的登录屏幕。

这是我得到的错误:“类型不匹配:推断类型是对齐,但预期是对齐。水平”

我一直在更改登录按钮的框布局中的 Alignment.BottomEnd,但没有任何效果。 我想将按钮设置到屏幕的左下角。

android authentication button android-jetpack-compose jetpack
© www.soinside.com 2019 - 2024. All rights reserved.