Storyboard & XIB 自己的理解

//1.storyboard

//(1)

//此处bundle:nil 等价于 [NSBundle mainBundle]

//    SecondViewController *secondVc = [[UIStoryboard storyboardWithName:@"Main" bundle:nil]instantiateViewControllerWithIdentifier:@"Second"];

//    SecondViewController *secondVc = [[UIStoryboard storyboardWithName:@"Main" bundle:[NSBundle mainBundle]]instantiateViewControllerWithIdentifier:@"Second"];

//(2)

//SecondViewController *secondVc = [[UIStoryboard storyboardWithName:@"SecondSB" bundle:nil]instantiateViewControllerWithIdentifier:@"Second"];

//(3)

//    SecondViewController *secondVc = [[UIStoryboard storyboardWithName:@"SecondSB" bundle:nil]instantiateInitialViewController];

//2.与控制器同名的XIB文件 SecondViewController.xib init或initWithNibName加载

//(1)

//    SecondViewController *secondVc = [[SecondViewController alloc]init];

//(2)

//    SecondViewController *secondVc = [[SecondViewController alloc]initWithNibName:@"SecondViewController" bundle:nil];

//3.与控制器不同名的XIB文件 View.xib loadNibNamed加载控制器的view

/*

在创建控制器的时候直接指定要加载xib作为控制器的view,名称不相干

> 需要修改xib文件的fileOwner进行关联

> 需要将fileOwner里面的view指向xib里面的view

*/

//(1)initWithNibName---注重file owner

SecondViewController *secondVc = [[SecondViewController alloc]initWithNibName:@"Second" bundle:nil];

//(2)

//    SecondViewController *secondVc = [[SecondViewController alloc]init];

//    secondVc.view = [[[NSBundle mainBundle]loadNibNamed:@"SecondViewController" owner:nil options:nil] lastObject];

//4.与控制器不同名的XIB文件 删除View,创建控制器  loadNibNamed---注重xib中内容

//    SecondViewController *secondVc = [[[NSBundle mainBundle]loadNibNamed:@"SecondVC" owner:nil options:nil] lastObject];

时间: 2024-08-12 09:16:15

Storyboard & XIB 自己的理解的相关文章

代码视图与StoryBoard.Xib文件视图的跳转

在storyboard中拖拽的控件,当我们使用纯代码进行编写的时候,进行跳转的时候用我们平时用的[self.navigationController popToViewController:Vc animated:YES], 你会发现跳转的后出现的页面只有你用用纯代码写的,而storyboard中的没有,这时候我们使用这个方法还是比较简单不能实现纯代码视图与StoryBoard.Xib视图跳转的问题: 可以常使用以下的方法: UIStoryboard *story = [UIStoryboard

iOS开发过程中,是用Storyboard/xib做界面,还是用代码来写界面,还是混合使用

以下是个人观点,非喜勿喷 关于iOS 开发过程中,是用Sb/xib 做界面 还是代码写界面,一直是讨论不断 各自成帮结派, 拖拉派.代码派.中间派 1. 拖拉派 ,Storyboard/xib 使用者, 像是海贼王里的能力者,开发快.Auto Layout .结构清晰,直观,一目了然 (个人觉得,小项目如此,超过10个界面以上,界面关系在复杂的话,看起来真是一团糟),能力者是有缺点的不会游泳, 同样Storyboard/xib 同样有它的缺点:(以下摘自) a). 所有的ViewControll

APP的页面有三种基本实现方式:storyboard,xib,代码实现 与自动布局

APP页面的三种基本实现方式:storyboard,xib,代码实现. 当然在不采用页面自动布局的情况下,代码实现可以和storyboard,xib混合使用,咱们只说只采用基本实现方式,不说混合实现页面,你们可以自己在心里混合下吧. 采用storyboard实现的APP页面安装包最大,你想采用他强大功能(页面组织逻辑,可见既可得等),那么你的APP包的大小只有忍痛长瘤子了,采用他你对安装包的大小别太奢望了.不过很多老码农写APP习惯,不喜欢这类现代化的工具,还在用代码实现页面,或用XIB实现页面

关于UIScrollView在StoryBoard/XIB无法滑动:方案一

基本架构: 默认情况下Auto LayOut是开启的,直接添加UIView在UIScrollView是无法滑动的,关闭Auto LayOut才可以: (建议开启) 第二步:用XIB搭建一个自定义的ContentView 将自定义的UIView与UIScrollView进行绑定 OK::::: 关于UIScrollView在StoryBoard/XIB无法滑动:方案一

关于UIScrollView在StoryBoard/XIB无法滑动:方案二

基本框架: 在Auto LayOut选中的情况下建立UIScrollView与View的Constraints:一定要建立完整使Constraints的标示变为蓝色就OK了 尤其注意ContentView的配置: OK;;;;;;;;;;;; 关于UIScrollView在StoryBoard/XIB无法滑动:方案二

(iOS)Storyboard/xib小技巧

1.选择被view覆盖住的view 当你想直接在view中选择自己想要的元素时,但是又碍于一个view上叠加的元素太多很难直接选中,那么在这时,你同时按住键盘上的shift和 control键,然后在你想选择的元素上点击鼠标,会弹出一个窗口,上面罗列了鼠标点击的位置下所有存在的元素,然后你再去进行选择会变的异常的简单. 2.添加第三方字体 以前在Xcode中添加第三方字体,虽然很简单但是略有些麻烦.在Xcode6中就很简单了,只需要把字体ttf文件像普通文件加入到项目中,在xib或storybo

iOS学习3_UI开发之纯代码/storyboard/xib

由于做android开发时间比较长,按照android的经验,一般开发界面都是使用xml来写布局文件的,很少会完全使用代码来写布局,最近刚学iOS,发现好多都是直接使用代码来写布局的.看视频学习刚好看到这个不错的小项目,因此做了一点小小的整理. 要实现的效果如下,点击加号添加一条,点击回收投标删除最下面一条,点击删除会删除当前的一条.点击头片会更改中间的文字.删除/添加会伴随动画. 1.使用纯代码来写布局 点击添加按钮 - (IBAction)add:(UIBarButtonItem *)sen

iOS 开发----Storyboard/xib 连线问题

在 iOS 开发中有时候因为疏忽或者误操作导致上面的错误出现,那么解决办法其实很简单,下面来给大家一步步的叙述: 首先想跟大家说一下,这个问题的原因就是因为连线的原因,比如连线找不到,连线的代码被误操作注释掉等,通常我的解决办法是: 打开 storyboard 选中当前控制器,右键会发现出现黄色惊叹号的控件,在这边也就是在.h 或.m 文件中可能被误操作注释掉了,重新打开即可. 重新打开上述代码即可解决相应的问题. 个人联系方式: 邮箱:[email protected] 手机:18813015

Label 自适应文本(StoryBoard/xib)

To make your label automatically resize height you need to do following: Set layout constrains for label Set height constraint with low priority. It should be lower than ContentCompressionResistancePriority Set numberOfLines = 0 Set ContentHuggingPri