CraftD: 一套快速且简单实现服务器驱动 UI 的框架,可用于 Android / iOS / Flutter / Kmp
请参阅 项目网站 获取文档。
技术 | 支持 |
---|---|
视图系统 - Android | ✅ 支持 |
Jetpack Compose - Android | ✅ 支持 |
小部件 - Flutter | ✅ 支持 |
SwiftUi - iOS | ✅ 支持 |
Jetpack Compose - Multiplatform | ⚒️ 进行中 |
组件 | Compose | 视图系统 | 小部件 | SwiftUI |
---|---|---|---|---|
按钮 | X | X | X | - |
文本 | X | X | X | X |
复选框 | X | - | - | - |
@JsonIgnoreProperties(ignoreUnknown = true)
@Immutable
@Stable
data class CheckBoxProperties(
@JsonProperty("text") val text: String? = null,
... rest of your properties
)
{
"key": "CraftDCheckBox",
"value": {
... rest of your properties
}
}
@Composable
fun CraftDCheckBox(
checkboxProperties: CheckBoxProperties,
modifier: Modifier = Modifier,
onChecked: (Boolean) -> Unit
) {
... Rest of your code
}
class CraftDCheckBoxBuilder(
override val key: String = CraftDComponentKey.CHECK_BOX_COMPONENT.key
) :
CraftDBuilder {
@Composable
override fun craft(model: SimpleProperties, listener: CraftDViewListener) {
val checkBoxProperties = model.value.convertToVO<CheckBoxProperties>()
CraftDCheckBox(checkBoxProperties) {
checkBoxProperties.actionProperties?.let { listener.invoke(it) }
}
}
}
更多详细信息请查看我们的 文档
Android Compose | Android 视图系统 | iOS SwiftUI | Flutter |
---|---|---|---|
![]() |
![]() |
![]() |
![]() |
一个用于 Android 的服务器驱动 UI 库。
受到 DynamicView 的启发。