斯特拉塔界面
声明式、可复用的Minecraft UI,具有无头渲染和精确版本化的Fabric适配器。
Strata UI
Strata 是一个用于 Minecraft Fabric Mod 的声明式 UI 库。 使用可复用组件构建界面,将应用状态保存在你自己的代码中,并可在不启动 Minecraft 的情况下测试 UI 行为。 单独安装的运行时将这些定义连接到客户端版本及其资源。
你可以构建什么
- 使用会测量并放置其子项的布局来排列控件。
- 将文本、输入框、滚动列表、图像和 Minecraft 物品栏绑定组合到应用界面中。
- 通过可组合的修饰符添加尺寸、外观、焦点和输入行为。
- 在无头测试和 Minecraft 客户端中复用界面定义。
- 组合你自己的组件,或扩展公开的 Element 和 Node 契约以实现保留行为。
浏览组件目录以查看图像、编译后的示例以及各个 API 链接。
安装并打开界面
仅针对 API 编译普通的 Mod 源代码,然后将与当前 Minecraft 版本匹配的运行时连同 Fabric Language Kotlin 一起安装。
dependencies {
compileOnly("dev.s7a.strata:strata-api:0.1.6")
modRuntimeOnly("dev.s7a.strata:strata-runtime-minecraft-fabric-<minecraft-version>:0.1.6")
modRuntimeOnly("net.fabricmc:fabric-language-kotlin:<compatible-version>")
}
在使用方 Mod 的 fabric.mod.json 中将 strata 声明为必需依赖项。
以下完全相同的示例仅针对 strata-api 编译,README 和公开的 Strata skill 也使用了该示例:
import dev.s7a.strata.component.Button
import dev.s7a.strata.component.Column
import dev.s7a.strata.component.Text
import dev.s7a.strata.layout.HorizontalAlignment
import dev.s7a.strata.modifier.Modifier
import dev.s7a.strata.modifier.menuBackground
import dev.s7a.strata.modifier.onActivate
import dev.s7a.strata.modifier.padding
import dev.s7a.strata.modifier.size
import dev.s7a.strata.screen.ScreenDefinition
/**
* Opens a confirmation screen on the installed runtime's owner thread.
*/
internal fun openConfirmationScreen(onConfirm: () -> Unit) {
ScreenDefinition("Confirm action") {
Column(
modifier =
Modifier.Empty
.size(320, 180)
.menuBackground()
.padding(12),
spacing = 8,
horizontalAlignment = HorizontalAlignment.Center,
) {
Text("Continue with this action?")
Button(
"Yes",
modifier = Modifier.Empty.onActivate(onConfirm),
)
}
}.open()
}
支持的 Minecraft 版本
1.20、1.20.1、1.20.2、1.20.3、1.20.4、1.20.5、1.20.6、1.21、1.21.1、1.21.2、1.21.3、1.21.4、1.21.5、1.21.6、1.21.7、1.21.8、1.21.9、1.21.10、1.21.11、26.1、26.2
请安装与客户端版本完全匹配的一个 Strata 运行时。 有关构件名称和 Java 要求,请参阅 Minecraft 兼容性。
文档和源代码
生成式 AI 大幅协助了实现、审查、测试、文档和发布页面文本。 维护者主导设计,并通过公开测试套件验证发布构件。
正在加载版本记录…
正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。