SwiftUI 初学者最有用的一个第三方库

2022-02-17  本文已影响0人  SwiftUI初学者
1.png

SwiftUI 作为苹果未来主要的一个 UI 框架,随着最近几季 WWDC 的召开已经都相对完善,正常的开发应用基本已经能满足,但是在一些更细的需求里可能暂时还没办法满足,比如 ScrollView 滑动到某个位置,TextField 修改背景颜色等,这些暂时没办法在 SwiftUI 里很好的做到,所以我们可以使用 SwiftUI-Introspect 这个库解决这些问题。

1. 一些可以使用的 View

2. 一些使用示例

List

List {
    Text("Item 1")
    Text("Item 2")
}
.introspectTableView { tableView in
    tableView.separatorStyle = .none
}
.introspectTableViewCell { cell in
    let backgroundView = UIView()
    backgroundView.backgroundColor = .clear
    cell.selectedBackgroundView = backgroundView
}

ScrollView

ScrollView {
    Text("Item 2")
}
.introspectScrollView { scrollView in
    scrollView.refreshControl = UIRefreshControl()
}

NavigationView

NavigationView {
    Text("Item 2")
    .introspectNavigationController { navigationController in
        navigationController.navigationBar.backgroundColor = .red
    }
}

3. 注意事项

使用的时候可能会引起一些问题,需要注意。比如在应用 SwiftUI For Beginners 里的搜索,开始我们想页面没滑动的时候是一个输入框,向上滑动之后在导航栏显示,所以我们使用到了 SwiftUI-Introspect 来监控 ScrollView 的滑动距离,开始我们直接设置一个变量并把 offset 赋值给这个变量,然后在导航栏里判断这个变量到某个值显示搜索按钮,因为每次都更新这个变量,导致在 iOS 14 的某些机型上存在性能问题,最后的解决办法是判断 offset 只在到某个值的时候赋值一次。

所以大家在使用的时候也要多思考相关内容。

关于应用:

更多内容可以查看应用 SwiftUI For Beginners,一个产品设计师从自学的 SwiftUI 开发的各个过程给你讲解 SwiftUI 内容,Apple 应用商店搜索 SwiftUI For Beginners 下载。

SwiftUI.jpg
上一篇下一篇

猜你喜欢

热点阅读