I want to use the .shadow operator to add a shadow to my button, but as you can see in the image, I got a white background. enter image description here

推荐答案

Jetpack中的修改器数量多达Modifier.shadow()个.首先使用shadow.

Button(
    modifier = Modifier
        .shadow(2.dp, RoundedCornerShape(2.dp))
        .height(36.dp),
    onClick = { /*TODO*/ }) {
    Text("Button")
}

vs

Button(
    modifier = Modifier
        .height(36.dp)
        .shadow(2.dp, RoundedCornerShape(2.dp)),
    onClick = { /*TODO*/ }) {
    Text("Button")
}

enter image description here

但这不是为按钮设置高程的方式.这是为了演示如何修改.shadow()顺序改变结果,可能对某些可组合性很有帮助,但需要使用按钮

Button(
    modifier = Modifier.height(36.dp),
    shape = RoundedCornerShape(2.dp),
    elevation = ButtonDefaults.elevation(...),
    onClick = { /*TODO*/ }) {
    Text("Button")
}

高程函数具有不同状态的属性,例如

  @Composable
    fun elevation(
        defaultElevation: Dp = 2.dp,
        pressedElevation: Dp = 8.dp,
        disabledElevation: Dp = 0.dp,
        hoveredElevation: Dp = 4.dp,
        focusedElevation: Dp = 4.dp,
    )

Android相关问答推荐

房间打开创建回调java.nio.channels. OverlappingFilLockResponse

打开平板电脑的下载文件夹中的文件,例如使用其mimeType将Intent发送到我们的应用程序

无法安装后重新编译android代码'

Android,从C++调用的铁 rust 库缺少符号

在Android 14/SDK 34中使用RegisterReceiver的正确方式是什么?

DocumentFile.canWrite()、DocumentFile.Existes()-使用本地内置手机存储(而不是云)时性能较差(占用太多CPU时间)

FireBase Android ChildEventListener在被规则拒绝时触发(RTDB)

使用Jetpack Compose创建特定于电视的布局

第一次使用onBackPressed()、NavigateUp()加载时MapView崩溃

android回收器查看点击事件无响应

Clean MVVM 架构中的 API 响应处理

在java android studio项目上安装mapbox

如何在这段代码android jetpack compose中实现全屏滚动

通过 adb 解压并重新安装后 Android 应用程序崩溃

在 react native 中设置 react-native-paper 组件的样式

try 使用 ViewPager2 实现滑动视图时出现类型不匹配错误

协程中的 Job.Cancel 与 Scope.Cancel 有什么区别?

如何在 MAUI 项目中包含每个平台的现有 C++ 库?

这是 let 函数的正确用法吗?

在 Android Studio 中保存数据