storyboard学习手记(一)----控制器

storyboard学习手记(一)

由于看到网络上关于storyboard的文章不多,搜索一下基本上都是代码,所以我自己写一个关于storyboard的文章,为了自己以后用storyboard开发更方便,由于我接触开发时间太短,做不到详细更做不到专业,所以还请路过的同行们多多指点,让我的文章更加丰满更加专业

1.controller的尺寸问题

为了全面就从最开始搭storyboard说起,工作台下面有个控制controller尺寸的东西控制controller尺寸
这个东西可以更加方便直观的适配我们想要适配的屏幕尺寸,在它下方会有适配的尺寸提示,例如这个第一列三个格子的是适配所有iPhone的屏幕尺寸。需要注意的是,这个是控制当前storyboard的所有controller的尺寸,无法做到单独控制,而且在当前尺寸下布局的UI是无法在其他尺寸下显示的,也就是说当你在适配所有iPhone的尺寸下布局的控件,在将它恢复成默认的尺寸或者另外的尺寸时控件是不显示的,因此这里可以让它使用默认的尺寸,然后将每个controller分别使用size调整,这样更方便布局也不用担心在git上会出现问题。size

2.关于controller间的逻辑

storyboard有个Initial View Controller的概念,就是正常打开storyboard显示的第一个控制器,当然从别的storyboard直接跳到这个storyboard的其他controller就不是这样的啦。在选中controller之后,右侧面板上有个可以勾选的属性叫 Is Initial View Controller,勾选以后当前controller就是当前storyboard的Initial View Controller了。假如一个app只有一个storyboard,而这个storyboard没有设置Initial View Controller,那这个程序进入app将会是黑屏,无法执行任何操作。如果是进入这个storyboard的视图需要从别的storyboard的控制器中跳转,那么不用设置Initial View Controller也没问题的,前提是你要设置好相互之间的关系。Initial View Controller

controller之间的跳转segue,可以直接在controller上拖线到另一个controller上,选择show就可以实现跳转,方法简单粗暴,如果是navigation controller的话直接就可以实现两个controller之间的相互跳转,若没有navigation controller的话则需要在第二个controller中添加一个按钮,在按钮中加入self的dismiss方法返回到前个页面

[self dismissViewControllerAnimated:YES completion:nil];

之前iOS各个storyboard之间跳转较为麻烦,还容易出现问题,在xcode7.0中,引入了名为Storyboard Reference的控件
Storyboard Reference
它可以很方便的从一个storyboard中跳转到另一个storyboard,同样不需要代码,只需要设置几个属性就能实现,我认为把它看做是另一个storyboard的指定的controller的替身会比较贴切,当然这是个人观点,希望没有误导别人。比如两个storyboard分别为A和B,A里的某个controller要跳转到B里面的某个controller,就在A里拖一个Storyboard Reference控件,然后在这个控件中的属性设置为B里那个controller的属性,例如B的名字是StoryboardB,A的控制器要跳转到的控制器的storyboard ID是abc,那么Storyboard Reference的设置如下图
settingReference
这里的Storyboard是填写B的名称,默认是main。Referenced ID就是controller的Storyboard ID,这里默认的是Initial View Controller,也就是说如果你不填写Referenced ID的话,它就会跳转到B的Initial View Controller。这个控件默认指向首页,也就是main Storyboard的Initial View Controller。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值