Jetpack Compose——AnimatedVisibility的简单使用

首先来看看参数:

ColumnScope.AnimatedVisibility(
    visible: Boolean,//是否可见
    modifier: Modifier = Modifier,//布局修饰
    enter: EnterTransition = fadeIn() + expandVertically(),//进入动画,默认为垂直展开时淡入  
    exit: ExitTransition = fadeOut() + shrinkVertically(),//退出动画,默认情况下垂直收缩时淡出  
    label: String = "AnimatedVisibility",
    content: @Composable AnimatedVisibilityScope.() -> Unit//根据可见值显示或消失的内容
)

使用:

    val visible = remember {
        mutableStateOf(false)
    }
    Column(
        Modifier
            .fillMaxSize()
            .padding(20.dp)
    ) {
        Text(
            text = if (visible.value) "出场动画" else "入场动画",
            modifier = Modifier.clickable { visible.value = !visible.value })
        AnimatedVisibility(visible = visible.value) {
            Text(text = "Compose is coming", fontSize = 30.sp)

        }
    }

效果如图:

 

Jetpack Compose for Desktop 中使用 JNI(Java Native Interface)可以让你与本地代码进行交互,调用 C/C++ 函数或访问本地库。以下是使用 JNI 在 Jetpack Compose for Desktop 中进行 JNI 开发的基本步骤: 1. 创建本地代码库:首先,你需要使用 C/C++ 编写本地代码库。可以使用你喜欢的 C/C++ 编译器将代码编译成动态链接库(.so 或 .dll 文件)。 2. 创建 Java 接口:在你的 Jetpack Compose for Desktop 项目中,创建一个 Java 接口来声明与本地代码库交互的函数。这个接口将作为 Java 和本地代码之间的桥梁。 3. 加载本地库:在你的 Jetpack Compose for Desktop 项目中,使用 `System.loadLibrary()` 或 `System.load()` 方法加载你的本地库。 4. 实现 Java 接口:创建一个 Java 类来实现你在第二步创建的 Java 接口。在这个类中,使用 `native` 关键字标记与本地代码库交互的函数。 5. 生成头文件:使用 `javac -h` 命令生成头文件(.h 文件)。这个命令会根据你在第二步创建的 Java 接口自动生成对应的头文件。 6. 实现本地代码:使用你喜欢的 C/C++ 编辑器打开生成的头文件,并实现其中声明的函数。确保函数签名和参数类型与 Java 接口中的一致。 7. 编译本地代码:使用你喜欢的 C/C++ 编译器编译你的本地代码,并生成动态链接库文件。 8. 调用本地函数:在你的 Jetpack Compose for Desktop 项目中,可以通过调用你在第二步创建的 Java 接口实现的函数来调用本地代码。 需要注意的是,JNI 开发需要一定的 C/C++ 编程经验,以及对 Java 和本地代码交互的机制有一定的了解。在使用 JNI 进行开发时,还需要注意内存管理和线程安全性等问题。确保在使用完本地资源后正确释放它们,以避免内存泄漏或其他问题的发生。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值