86ec5b81fb5a176abdc96c421ac8a70e
SwiftUI 既优雅又好用的封装库 数行代码快速整合UIKit组件 (教程含源码)

实战需求

SwiftUI 既优雅又好用的封装库 数行代码快速整合UIKit组件 (教程含源码)

本文价值与收获

看完本文后,您将能够作出下面的界面

SwiftUI 既优雅又好用的封装库 数行代码快速整合UIKit组件

SwiftUI 既优雅又好用的封装库 数行代码快速整合UIKit组件

看完本文您将掌握的技能

  • 组件实现闭包响应
extension UIControl {
    func addAction(for controlEvents: UIControl.Event = .touchUpInside, _ closure: @escaping()->()) {
        addAction(UIAction { (action: UIAction) in closure() }, for: controlEvents)
    }
}

 view.addAction(for: .valueChanged) {
                    print("UIStepper is now \(Int(view.value))")


                }

基础知识

UIKit 是什么

为您的 iOS 或 tvOS 应用程序构建和管理图形化、事件驱动的用户界面。

概述

UIKit 框架为您的 iOS 或 tvOS 应用程序提供所需的基础架构。它提供了用于实现界面的窗口和视图架构、用于向应用程序提供多点触控和其他类型输入的事件处理基础设施,以及管理用户、系统和应用程序之间交互所需的主运行循环。该框架提供的其他功能包括动画支持、文档支持、绘图和打印支持、有关当前设备的信息、文本管理和显示、搜索支持、辅助功能支持、应用扩展支持和资源管理


实战代码

```
import SwiftUI

struct ContentView: View {

var body: some View {
    UIWrapping<UILabel> { view in
        view.numberOfLines = 0
        view.text = "这个是我们自定义Label\n支持多行"
        view.textAlignment = .center
    }
    .background(Color.green)
    .fixedSize()

    Divider()
    HStack{
top Created with Sketch.