玖叶教程网

前端编程开发入门

Kotlin 桌面 UI 框架添加 Swing 互操作层

Jetpack Compose for Desktop 是软件开发厂商 JetBrains 推出的一个 Kotlin 桌面 UI 框架,采用声明式和响应式的方法构建 UI。简化并加快了桌面应用程序的 UI 开发,允许 Android 和桌面应用程序之间的 UI 代码共享。

Jetpack Compose for Desktop 的第一个里程碑(M1)版本已于上月发布,这也是该 UI 框架的首次公开迭代。现在,JetBrains 又发布了 Jetpack Compose for Desktop 的第二个里程碑(M2)版本。它带有一个新的 project wizard、提高了 Compose for Desktop 与不同操作系统和构建系统的兼容性、引入了新的代码重用功能,并修复了许多错误。

一些重点更新内容如下:

Quick start via project wizard

在 IntelliJ IDEA 2020.3 中添加了一个 project wizard 模板。现在,创建 Compose for Desktop 应用程序比以往任何时候都要容易:当使用 File | New | Project......创建一个新的项目时,可在 Kotlin wizard 的 "Compose for Desktop"类别中选择一个可用的模板,然后开始构建你的应用程序,而无需自己编写 Gradle 配置。

兼容性增强

Compose for Desktop Milestone 2 引入了对 macOS 10.13 和 10.14(在 M1 中已经支持 10.15 及更高版本)的支持。还增加了对 Gradle 最新版本的支持,支持 Gradle 6.6 和 6.7。

M2 版本也提供了 Apple Silicon 支持。用户的应用程序现在可以直接在苹果的基于 ARM 的硬件(例如 M1)上运行,而无需依赖于 Rosetta 2 的动态二进制转换。

在 Swing 中嵌入 Compose for Desktop

M2 版本中添加了一种称为ComposePanel的新机制,使用户可以将 Compose UI 无缝添加到基于 Swing 的容器(如JFrame)中。这使得用户可以在基于 Swing 的环境中进行实验并逐步采用 Compose for Desktop,而不必完全替换现有的用户界面。

示例如下:

可查看有关将 Compose for Desktop 集成到基于 Swing 的应用程序的教程,以获取更多信息。值得注意的是,目前尚不支持反向操作(将 Swing 组件添加到 Compose for Desktop composition 中)。

支持 Android XM L图标

Compose for Desktop 现在还支持 Android 的基于 XML 的矢量图像(称为 vector drawables),使得用户可以直接在桌面应用程序中渲染这些图像,而无需先进行调整。这也意味着用户可以在针对 Android 和台式机的跨平台应用程序中共享 vector drawables 作为公共资源。

具体可查看”Image and in-app icons manipulation“教程。

发布公告:https://blog.jetbrains.com/cross-post/jetpack-compose-for-desktop-milestone-2-released/

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言