CraftDSwiftUI 1.0.0

CraftDSwiftUI 1.0.0

Rodrigo Vianna 维护。



  • Rodrigo Vianna

Android API kotlin License MIT


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 - - -

创建自定义组件(Android Compose 示例)

@JsonIgnoreProperties(ignoreUnknown = true)
@Immutable
@Stable
data class CheckBoxProperties(
    @JsonProperty("text") val text: String? = null,
    ... rest of your properties
)

在 Dymanic.json 中添加您的组件 json 对象

{
  "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 android iOS flutter

鸣谢

一个用于 Android 的服务器驱动 UI 库。

受到 DynamicView 的启发。