
SwiftUI
大招至胜
完美主义者+细节强迫症
展开
-
SwiftUI与UIKit混编,键盘出现后CPU 100%的原因
但是我们在开发的时候很正常,发布sit后,测试人员反馈了一个奇怪的问题,就是当键盘出现后,整个UI就hold住了,无法相应用户事件。关键这这个问题就像是随机出现的一样,有的机器上能复现,有的机器上打死无法复现。SwiftUI已经出来了一段时间,有幸在最近的一个大项目中使用SwiftUI, 作为现代化的UI框架,以后的趋势,我们iOS开发的同学势必要掌握它,提升自己的竞争力,以至于更好的混口饭吃。查看CPU占有的问题,Profile看到是底层SwiftUI的函数占用的CPU的,但是还是没有找到原因。原创 2023-03-21 09:29:55 · 705 阅读 · 0 评论 -
SwiftUI获取子View的frame
用了backgroundPreferenceValue,是因为onPreferenceChange会丢失信息,可以通过PreferenceKey获取子View的Frame, 直接上货。原创 2022-12-23 10:57:12 · 531 阅读 · 0 评论 -
SwiftUI中使用UITextField遇到的一个坑:宽度顶出屏幕
最近在使用SwiftUI开发,在开发一个搜索框的时候,因为有许多的验证逻辑,所以我们没有使用SwiftUI中的TextField,而是桥接了UIKit中的UITextField。但是遇到一个问题,就是当我们在不断输入内容的时候,UITextField会随内容的增加,最后等于屏幕宽度,如果有padding的情况下,最外面的body会被挤出屏幕,即使maxWith是小于屏幕宽度也会有同样的问题。最后发现是需要设置UITextField抗压缩参数,设置小一点就可以。顺便说说,什么是抗压缩与抗拉伸?我的理解就是原创 2022-06-15 17:20:03 · 698 阅读 · 0 评论