美文网首页iPhone应用开发
新手遇到的第一个问题 2020-05-03

新手遇到的第一个问题 2020-05-03

作者: chenhongqi | 来源:发表于2020-05-03 20:22 被阅读0次

鉴于拖拖拽拽这种布局的方式一向是我厌恶的。所以一开始就决定用纯代码的方式写iPhone程序。

第一步:(按网上资料 OK)

1.创建一个工程;

2.删除 stroryboard 文件

3.删除SceneDelegate.swift文件

4.置空工程文件属性中 info属性里面的Main storyboard file base name

5.删除Info.plist文件中的 Main storyboard file base name 项,和 Application Scene Manifest项

6.修改AppDelegate文件,

    (6.1)删除后面的两个函数

 func application(_application:UIApplication, configurationForConnecting connectingSceneSession:UISceneSession, options:UIScene.ConnectionOptions) ->UISceneConfiguration{

}

 func application(_application:UIApplication, didDiscardSceneSessions sceneSessions:Set) {

}

    (6.2)在didFinishLaunchingWithOptions函数里面,给定rootViewController

        window = UIWindow(frame: UIScreen.main.bounds)

        window?.rootViewController = your_rootViewController  

        window?.makeKeyAndVisible()

        return true

7.运行OK,没问题

第二步:添加UITabBarController

1.自定义一个UITabBarController的子类HQTabBarViewController

2.自定义几个UIViewController的子类作为标签页

在viewDidLoad()方法里面设置tabBarItem.title, tabBarItem.image,设置其他UI

3.修改AppDelegate的didFinishLaunchingWithOptions方法

    let rootViewController =HQTabBarViewController()

    rootViewController.viewControllers = [viewController1 ,viewController2, viewController3]   

    window?.rootViewController= rootViewController

4.运行,tabBarItem不显示!!!!

--------------------------------------------------------------------

第一个遇到的问题是:给UITabBarController添加的TabBarItem首次启动时不显示文字和图片。点击后才会显示。

搜索某度,简直......,大家都知道。

找找stackoverflow吧,有人遇到了和我一样的问题。

------------------------------------------------------------------

原因:

ViewController里的View是个Lazy,不到必要的时候不会加载,

这个和android里的ViewPager预加载不同。因为Lazy,所以没有加载,就不会调用viewDidLoad方法,没有调用viewDidLoad方法,当然就不会显示设置的title和图片了。

解决方法:

知道了原因,解决办法也就有了:把设置图片和title的语句放到AppDelegate的didFinishLaunchingWithOptions方法里面。

运行,一切OK。

相关文章

  • 新手遇到的第一个问题 2020-05-03

    鉴于拖拖拽拽这种布局的方式一向是我厌恶的。所以一开始就决定用纯代码的方式写iPhone程序。 第一步:(按网上资料...

  • 新手究极搭建react-native环境解决pod instal

    首先说明,react-native对新手很不友好,按照官网说的会遇到很多的问题。 第一个遇到的问题,高版本的rea...

  • 新手这么做,轻松学会训练狗狗大小便

    新手养狗遇到的第一个问题,也是最让人头痛的问题,就是训练狗狗定点大小便。狗狗随地大小便的习惯,总是让新手主人无从下...

  • 销售新手遇到的问题清单

    1.销售新人如何快速和谐地融入团队中?如何避免受到同事的排挤?有哪些注意事项? 2.在业绩重压下,有何种方法让自己...

  • Swift新手可能遇到的问题

    这是用Swift做项目遇到的问题记录,主要是供自己记录,如果有人碰巧搜索看到,有些你可能看不懂。不过这也没关系,因...

  • 2019-11-26解决Django-Error: That p

    对于Django新手,在学习过程中会遇到很多问题,其中经常遇到的问题就是Error: That port is a...

  • 解决Django-Error: That port is alr

    对于Django新手,在学习过程中会遇到很多问题,其中经常遇到的问题就是Error: That port is a...

  • 专家与新手

    专家与新手解决问题的差别可以归纳为以下几个: 第一个差别:专家不注意中间过程,可以很快地解决问题;新手需要很多中间...

  • 写作新手容易遇到的哪些问题?

    随着21天训练营的结束,以及我的第一篇短篇小说更完,前段时间每天绷紧的神经突然松懈了下来,情绪也一下子陷入了低谷。...

  • 新手使用简书遇到的问题

    我想在简书上练习Markdown语法,学习用Markdown编辑文字,但是网页版不知道如何设置。 我想让左边是Ma...

网友评论

    本文标题:新手遇到的第一个问题 2020-05-03

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