iOS UIKit 纯代码实时预览

终于纯代码也可以实时预览写代码了
RelaxScoreVC 就是自己绘制的控制器
SetTimerAlertView 就是自己写 UIView 控件


#if DEBUG
import SwiftUI
// 视图控制器的SwiftUI包装器
private struct ViewControllerPreview: UIViewControllerRepresentable {
   func makeUIViewController(context: Context) -> RelaxScoreVC {
       RelaxScoreVC()
   }
   
   func updateUIViewController(_ uiViewController: RelaxScoreVC, context: Context) {}
}
// UIView的SwiftUI包装器
private struct CustomViewPreview: UIViewRepresentable {
   func makeUIView(context: Context) -> SetTimerAlertView {
       let test = SetTimerAlertView()
       
       test.showView(window: nil)
       return test
   }
   
   func updateUIView(_ uiView: SetTimerAlertView, context: Context) {}
}
// 预览提供者
@available(iOS 13.0, *)
struct RelaxScoreVCPreviews: PreviewProvider {
   static var previews: some View {
       
       // 预览视图控制器
       ViewControllerPreview()
           .previewDevice(PreviewDevice(rawValue: "iPhone 15 Pro Max"))
           .previewDisplayName("视图控制器 - iPhone 15 Pro Max")
   }
}

#endif

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • UIKit根据图上的UI控件都大致简单的写一下希望对iOS开发感兴趣的同学有帮助。想深入的同学可以查阅相关文档中的...
    zysmoon阅读 10,180评论 0 8
  • 用到的组件 1、通过CocoaPods安装 2、第三方类库安装 3、第三方服务 友盟社会化分享组件 友盟用户反馈 ...
    SunnyLeong阅读 14,941评论 1 180
  • """1.个性化消息: 将用户的姓名存到一个变量中,并向该用户显示一条消息。显示的消息应非常简单,如“Hello ...
    她即我命阅读 8,509评论 0 5
  • 为了让我有一个更快速、更精彩、更辉煌的成长,我将开始这段刻骨铭心的自我蜕变之旅!从今天开始,我将每天坚持阅...
    李薇帆阅读 5,924评论 0 3
  • 似乎最近一直都在路上,每次出来走的时候感受都会很不一样。 1、感恩一直遇到好心人,很幸运。在路上总是...
    时间里的花Lily阅读 5,198评论 0 2