当前位置: 首页 > news >正文

创建 UIKit 项目教程

一、打开 XCode,选择 iOS 下的 App,然后点 Next

二、Interface 选择 Storyboard,然后点 Next

三、删掉 Main.storyboard

四、删掉 SceneDelegate.swift

五、AppDelegate.swift 只保留第一个函数

六、在 AppDelegate.swift 文件里的 application 函数改成这样

class AppDelegate: UIResponder, UIApplicationDelegate {var window: UIWindow?func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {window = UIWindow(frame: UIScreen.main.bounds)window?.rootViewController = ViewController()window?.makeKeyAndVisible()return true}
}

七、删掉在 Info.plist 的 Application Scene Manifest

八、在 building settings 里搜 storyboard,然后把 UIKit Main Storyboard File Base Name 的 "Main" 置空

九、验证

把这段代码复制进 ViewController.swift 中

import UIKitclass ViewController: UIViewController {var label = UILabel()override func viewDidLoad() {super.viewDidLoad()view.backgroundColor = .whiteview.addSubview(label)configLabel()layoutLabel()}func configLabel() {label.text = "Hello UIKit"label.textColor = .blacklabel.font = .systemFont(ofSize: 18)label.textAlignment = .center}func layoutLabel() {label.translatesAutoresizingMaskIntoConstraints = falseNSLayoutConstraint.activate([label.centerXAnchor.constraint(equalTo: view.centerXAnchor),label.centerYAnchor.constraint(equalTo: view.centerYAnchor),label.leadingAnchor.constraint(greaterThanOrEqualTo: view.leadingAnchor, constant: 20),label.trailingAnchor.constraint(lessThanOrEqualTo: view.trailingAnchor, constant: -20)])}
}

会看到如下结果:

http://www.lryc.cn/news/585973.html

相关文章:

  • 在 Java 中,计算两个 Integer 类型表示的合格数量与总数量的合格率,并保留四位小数,推荐使用 BigDecimal 来确保精度
  • springboot+swagger2文档从swagger-bootstrap-ui更换为knife4j及文档接口参数不显示问题
  • 股票的k线
  • 从基础加热到智能生态跨越:艾芬达用创新重构行业价值边界!
  • 人工智能自动化编程:传统软件开发vs AI驱动开发对比分析
  • 【科研绘图系列】R语言绘制小提琴图
  • 【TGRS 2025】可变形交互注意力Deform-Interac-Att,即插即用,涨点神器!
  • 【八股消消乐】Kafka集群 full GC 解决方案
  • 系统分析师-计算机系统-输入输出系统
  • 计算机视觉与深度学习 | 基于Matlab的多特征融合可视化指纹识别系统(附完整代码)
  • 3 c++提高——STL常用容器(一)
  • 深度学习图像分类数据集—铜片划痕识别分类
  • RocketMQ-
  • 基于springboot+Vue的二手物品交易的设计与实现
  • MySQL 内外连接
  • 仅27M参数!SamOutVX轻量级语言模型刷新认知,小身材也有大智慧
  • 贪心算法题解——跳跃游戏【LeetCode】
  • day68—DFS—二叉树的所有路径(LeetCode-257)
  • 贪心算法题解——划分字母区间【LeetCode】
  • 【LeetCode453.最小操作次数使数组元素相等】
  • 代码训练LeetCode(45)旋转图像
  • 【Linux-云原生-笔记】Apache相关
  • 【Modern C++ Part9】Prefer-alias-declarations-to-typedefs
  • 内网穿透系列九:开源的网络穿透与组网工具 EasyTier,支持多种数据传输通道,去中心化,兼具高效与安全
  • Kafka Schema Registry:数据契约管理的利器
  • 对日开发 秀丸文本编辑器 添加文本变换模块
  • 聊一聊Spring框架接口测试常见场景有哪些?
  • 学习C++、QT---22(QT中QTextStream库读取文件、写入文件的讲解)
  • docker搭建 与镜像加速器
  • win10安装Rust Webassembly工具链(wasm-pack)报错。