animateDpAsState 的用法

@Composable
fun SimpleFilledTextFieldSample(largeSize: Boolean) {
    // Animate the size (dp) value
    val size by animateDpAsState(
        targetValue = if (largeSize) 50.dp else 50.dp/3.5f,
        animationSpec = tween(
            durationMillis = 2000, // animation duration
            easing = FastOutSlowInEasing // easing function
        )
    )

    var text by remember { mutableStateOf("Hello") }
    TextField(
        modifier = Modifier
            .size(374.dp/3.5f, size)
            .background(Color.LightGray), // 设置背景颜色
        textStyle = LocalTextStyle.current.copy(
            fontSize = 24.sp/3.5f, // 设置文字大小
            color = Color.Black // 设置文字颜色
        ),
        colors = TextFieldDefaults.colors(
            focusedIndicatorColor = Color.Transparent,
            unfocusedIndicatorColor = Color.Transparent,
            disabledIndicatorColor  = Color.Transparent ,
        ),
        shape = RoundedCornerShape(4.dp), // 设置圆角
        singleLine = true,
        value = text,
        onValueChange = { text = it },
        placeholder = {
            Text(text = "Enter your text here")  // 设置占位符文本
        },
    )
}

  var largeSize by remember { mutableStateOf(true) }
 Column(
                modifier = Modifier
                    .verticalScroll(scrollState)
                    .fillMaxSize()
                    .offset(x = 20.dp)
            ) {

                Spacer(modifier = Modifier.height(20.dp))
                SimpleFilledTextFieldSample(largeSize)
                Spacer(modifier = Modifier.height(2.dp))
                Button(onClick = { largeSize=largeSize.not() }) {
                    Text(text = "111")

                }
                }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值