xib创建ViewController
2016-05-19 18:39
375 查看
个人感觉ios中的UIViewController和xib文件,分别相当于android的Activity 和Layout文件
当时两者的关联比android稍微复杂些。
ios上分别新建的UIViewController类和xib文件建立关联必须完成以下两步:
1创建Xib 文件
a. 点击我们要加载的 xib 文件
b. 在右边选中 File's Owner
c. 在 File's Owner 的 选项卡的“Custom Class” 属性设置中,将 Class 的值改成对应的 VC, 这里改成 你新建的UIViewController派生类,
这时候运行,会出现错误
'NSInternalInconsistencyException', reason: '-[UIViewController _loadViewFromNibNamed:bundle:]
loaded the "MainViewController" nib but the view outlet was not set.
d. 这时候,在File's Owner 的 选项卡中, 就 会出现“待连接设置” 的 view 属性, 将此view属性关联道xib中任何一个view
2. 在创建你的UIViewControler类对象是用下面构造函数:
switchViewController = [[SwitchViewController alloc]initWithNibName:@"SwitchView" bundle:nil];
//@"SwitchView"为你的xib文件名
这个有点类似Acitvity中setContentView。
另外注意,新版本的sdk,iphone模拟器分不同尺寸,你要选择与你工程对应的模拟器,否则:例如,你的工程针对iphone5的尺寸,而你模拟器选择3.5英寸,那么可能你排在底端的控件在模拟器上不可见。
当时两者的关联比android稍微复杂些。
ios上分别新建的UIViewController类和xib文件建立关联必须完成以下两步:
1创建Xib 文件
a. 点击我们要加载的 xib 文件
b. 在右边选中 File's Owner
c. 在 File's Owner 的 选项卡的“Custom Class” 属性设置中,将 Class 的值改成对应的 VC, 这里改成 你新建的UIViewController派生类,
这时候运行,会出现错误
'NSInternalInconsistencyException', reason: '-[UIViewController _loadViewFromNibNamed:bundle:]
loaded the "MainViewController" nib but the view outlet was not set.
d. 这时候,在File's Owner 的 选项卡中, 就 会出现“待连接设置” 的 view 属性, 将此view属性关联道xib中任何一个view
2. 在创建你的UIViewControler类对象是用下面构造函数:
switchViewController = [[SwitchViewController alloc]initWithNibName:@"SwitchView" bundle:nil];
//@"SwitchView"为你的xib文件名
这个有点类似Acitvity中setContentView。
另外注意,新版本的sdk,iphone模拟器分不同尺寸,你要选择与你工程对应的模拟器,否则:例如,你的工程针对iphone5的尺寸,而你模拟器选择3.5英寸,那么可能你排在底端的控件在模拟器上不可见。
相关文章推荐
- Linux下的多进程编程
- Android口袋天气系统一-->整体架构
- 找水王
- [MySQL]增加约束键
- 修改Android系统字号(二)
- python的I/O
- 我一路向北,寻找有你的季节
- zookeeper入门之curator框架--几种锁的操作
- 正则
- Java环境变量配置
- rsyslog
- Struts2的Result映射
- 真正的让iframe自适应高度 兼容多种浏览器随着窗口大小改变
- Java内存模型与volatile
- EL表达式中获取list长度
- IP与域名绑定
- secureCRT报错 The remote system refused the connection.
- nodejs中module.exports和exports.xx的区别
- 访问其他机器的资料
- 加密SO文件中自定义的section