美文网首页
SwiftUI笔记

SwiftUI笔记

作者: wbwu | 来源:发表于2019-06-10 11:45 被阅读0次
1. SwiftUI中使用Struct结构体来定义View显示, 并且使用 modifier 修改器来做属性更正, 每个修改器是可以进行链式调用的; 请注意, 修改器的链式调用顺序可能会影响显示效果, 所以如果发现View的布局没有符合预期, 请先检查修改器的链式调用顺序。
2. SwiftUI中的List默认高度是至少44, 内部item可以通过 .item** 属性进行修饰. 如果不想要这种系统风格, 可以自定义一个新的SwiftUI 的 view 作为单独的Cell, 然后使用 forEach (objects) { object in ...} 来代替。
3. 可以通过Canvas中camand + 点击选中, 或者直接在代码中 cammand + 点击选中, 来调出 inspect... 检查器来进行属性更改。
cammand + 点击
4. 基本容器中的VStack、HStack、ZStack分别代表:垂直布局、水平布局、 叠加布局。为了便于理解,HStack相当于在X轴方向上、且(默认)不能相互叠加的进行布局,而VStack是在Y轴上;ZStack则在Z轴上,那样会使得布局是叠加的,后加上去的视图叠加显示在屏幕最上层。
5. Spacer()在当前Stack内充满屏幕空间, 如在HStack内使用会充满水平布局,其他同理。
6. SwiftUI 中的View和 UIKit中的UIView根本上是不同的,但是可以将UIView包装成SwiftUI中的View以便在SwiftUI的View中使用,并且很简单:只需要遵循UIViewRepresentable协议并实现两个方法,即可像使用Text那样使用你的UIView了。貌似WWDC2019中,介绍SwiftUI的时候的确说 View 的确是一种协议,没有字幕勉强听懂。
UIViewRepresentable 协议需要实现的两个方法:
func makeUIView(context: Self.Context) -> Self.UIViewType; // 创建
func updateUIView(_ uiView: Self.UIViewType, context: Self.Context); //更新

苹果开发者中心UIviewrepresentable说明页

相关文章

网友评论

      本文标题:SwiftUI笔记

      本文链接:https://www.haomeiwen.com/subject/pioaxctx.html