storyboard 使用小计

xcode 标签内容

command + option 1~6 快速切换 xcode storyboard(xib)编辑内容(注:下面不强调xib)

  • 1 文件信息(.h.m全都有,略微不同),基本上不怎么修改,Size Class 可能会放弃选择。

  • 2 Quick Help 快速帮助(.h.m全都有),选中类的描述,一般也不怎么看。

  • 3 类别说明,一般也就改个Class 对应.h.m文件。

1 关于indentify,不填写,默认就好,也方便使用 NSStringFromClass()。
2 Attributes,可以添加属性,KVC吧,一般也不用。
3 Document 和 Accessibility 基本没用过,sorry了。

  • 4 类的各种属性设置:从上到下可能会分几个模块,第一个是本身,往下是父类,父类的父类...不同的类有不同的属性可以设置,比较多,不一一介绍了。
  • 5 约束:注意 Constraints!
1 直接鼠标右键拉约束。
2 整个storyboard 右下角 4 个小按钮添加约束
    第一个:不熟!
    第二个:添加与父视图的约束;
    第三个:添加相邻控件的约束;(注意margins 这个属性,自动留边)
    第四个:更新约束、位置。

3 添加完约束,在Constraints 中,对应增加约束,
    1 Edit 可以快速修改:
      constraints 大小关系 >=< n
      priority 优先级
      Multiplier 倍数关系
    2 双击约束,可以详细修改:比较多但是内容差不多,不写了。

4 Content Hugging 和 Compression Resistance (内容紧凑优先级 和 压缩优先级)不多介绍了,masonry 里写了一点点。


5 Intrinsic Size 默认大小,一般给没有图片的imageView 写一个。
  • 6 链接 Outlet
    对于上面3步对应的Class,可以将storyboard 中各类,以右键方式拖至.h.m文件,IBOutlet 链接。链接会展示在对应 Outlets
1 拖至接口处,形成对象;
2 (UIControl类)拖至实现文件下,形成事件;
3 约束本身也可以拖至接口处,2次调整;

4 注意修改outlet 时,检查 6标签中是否对应修改,避免产生!必崩!
  • 添加转场
1 UIControl 类,链接另一个ViewController,对应事件触发转场。
2 ViewController 本身,链接另一个ViewController,需要代码支持。
3 链接成功,command + shift + 4 需要设置,转场标记 indentifier,用于代码使用。
4 也可以不添加,标记,直接使用代码进行push。


  • 其他
    control + command + option + 3 快速搜索控件,上下键切换,回车即添加。

结合代码使用

关于自动布局本身就比较复杂,可能遇到的问题也比较多,没用好就会很多红线哦,注意安全。

  • 1 awakeFrimNib:nib加载初始化。
  • 2 代码加载nib
// storyboard
    UIViewController *testViewController = [[UIStoryboard storyboardWithName:@"Main" bundle:nil]instantiateViewControllerWithIdentifier:@"TestViewController"];

// nib
    UIView *testView = [[NSBundle mainBundle] loadNibNamed:@"TestView" owner:self options:nil].lastObject;
// TestView 类,并不是 init 初始化,而是 awakeFrimNib。
  • 3 代码转场传值
1 直接通过2获取ViewControllerV push

2 通过转场标记转场
// 打算 使用标记转场,并添加参数 sender
    [self performSegueWithIdentifier:@"gotoDetail" sender:@"message"];

// 转场传参数
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
    [segue.destinationViewController setValue:sender forKey:@"message"];
}

其他 个人总结

在固定frame的view上面添加自动布局的view - ok;
在自动布局的view上添加固定frame的view - error;

1

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 15,657评论 4 61
  • Storyboard是最先在iOS 5引入的一项振奋人心的特性,大幅缩减构建App用户界面所需的时间。 要介绍St...
    余一波_Bobby阅读 62,421评论 11 76
  • 二零一七年二月六日,不知不觉就长大了,还有八个月的时间,我就要成年了,还有四个月的时间,我就要高考了。从叙述的顺...
    爱自己更爱自己阅读 448评论 0 0
  • 1.mkdir /usr/local/nexus,cd /usr/local/nexus 2.wget https...
    loquito阅读 1,311评论 0 0
  • 妈妈啊!这里的燕巢呢? 它自己掉下来了 啊!?怎么又掉下来了啊 有燕子摔下来嘛? 摔下来了,又艰难的飞走了 燕子啊...
    浊浊玉阅读 180评论 2 1

友情链接更多精彩内容