如何在 Jetpack Compose 中创建编辑器?
Posted
技术标签:
【中文标题】如何在 Jetpack Compose 中创建编辑器?【英文标题】:How to create an editor in Jetpack Compose? 【发布时间】:2021-08-12 00:24:54 【问题描述】:Jetpack compose 提供了很多 Material 组件,例如 TextField 等。但是,要构建文件编辑器之类的东西,可以使用什么样的组件来支持多行文本以及文本操作,例如选择文本、剪切复制-粘贴等。
也有兴趣了解 Jetpack compose 桌面的等效组件。
【问题讨论】:
【参考方案1】:对于 Compose Desktop,您可以使用像 RSTextArea 这样的 Swing 组件
我写了一个blog post 来介绍如何嵌入它。
【讨论】:
【参考方案2】:jetbrains 在 GitHub 上有一个用于编辑器的官方示例 https://github.com/JetBrains/compose-jb/tree/master/examples/codeviewer
【讨论】:
这是一个只读的 CodeViewer。他们在“文本”组件中逐行渲染文件,格式不可编辑。此外,即使我们使 Text 组件可编辑,我们也需要一个允许编辑整个文件而不是逐行编辑的编辑器。以上是关于如何在 Jetpack Compose 中创建编辑器?的主要内容,如果未能解决你的问题,请参考以下文章
Jetpack compose 中带有提示文本的 TextField
Android JetPack Compose组件中Scaffold的应用
Android – 使用带有 Jetpack Compose 的 Retrofit 库进行 JSON 解析