Xcode编写第一个iOS Demo(OC)及遇到的坑记录

看了一周的OC语法,准备正式上手,写个最简单的iOS页面试试,结果一路遇到一堆大坑。。

 

用Xcode12创立一个空的iOS APP项目,目录是这样的:

 

 

 其中MYUIView .h和.m文件是我创建的,其他文件是Xcode自动创建的。

各文件意义大致是这样:

入口在main.m,含义是直接调用委托,委托对象的名字是appDelegateClassName变量的值。

 

 

 

然后AppDelegate文件本来我以为就应该是真正的入口了,但他还不是真正的入口,可以看到:

 

 

AppDelegate是把工作又交给了SceneDelegate,关键这玩意以前版本的Xcode是没有的,我看的iOS书上也没讲有这回事,浪费半天时间。

另外Xcode工程默认的程序入口是storyboard,我们想直接用代码初始化工程入口,怎么办?

经过各种百度谷歌,解决方法如下:

1.删除storyboard,直接move to trash

2.删除infoplist里的Storyboard

3.删除工程配置--general--deployment info选项卡下的Main interface(删除Main,回车就行)

4.删除Info文件下的Application Scene Manifest

5.删除AppDelegat.m中自动生成的两个委托SceneDelegate的方法(上面图有)

6.关掉Xcode重启

 

好!信心满满开始运行!报错!

注意到SceneDelegate里有window的声明,window应该算是承接所有view的容器(iOS萌新的看法),所以既然我们不用SceneDelegate了,那么AppDelegate.h里要加上window的声明。

再运行,又报错了!

 

 

发现是需要一个根ViewController,那么我们再初始化一个:

 

 

终于Run成功了,我好想打人!

posted @ 2020-12-08 20:45  NeoZy  阅读(1410)  评论(0编辑  收藏  举报