博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[转]iOS学习笔记(2)--Xcode6.1创建仅xib文件无storyboard的hello world应用
阅读量:5333 次
发布时间:2019-06-15

本文共 3075 字,大约阅读时间需要 10 分钟。

转载地址:http://www.mamicode.com/info-detail-514151.html

由于Xcode6之后,默认创建storyboard而非xib文件,而作为初学,了解xib的加载原理很重要,所以,需要创建一个没有storyboard的项目

1. 创建一个新的工程

技术分享

 

2. 选择仅一个视图的模板

技术分享

 选择 Single View Application , 点击Next

3. 填写项目信息

不需要选择core data,填好信息后,点击next,然后点击create

技术分享

 

4. 删除storyboard和launchscreen.xib文件

将storyboard和launchscreen扔进废纸篓

技术分享

 

5. 修改info.plist文件

删除info.plist文件中Main storyboard file base name和Launch screen interface file base name两个属性

 

6. 创建user interface的视图xib文件

点击next,然后Save as “HelloWorldView”点击Create

技术分享

从object library中拖出一个Lable,再拖出一个button形成下面图即可技术分享

7. 修改视图控制器文件

创建视图和控制器的关联,Xcode默认创建了ViewController.h和ViewController.m文件,所以就不用自己创建了

1)修改xib视图文件的File‘s Owner

点击列表中的File‘s Owner,按command+option+3 打开 Identity Inspector,修改Custom Class中的Class为ViewController

2)创建输出口和动作方法的关联

点击技术分享中间的两个圈,打开辅助编辑器

选定Lable视图同时按住control键拖到ViewController.h的@interface与@end中间会弹出菜单,按照下图填写内容,然后回车创建输出口

 技术分享

创建button的动作方法也是选定视图并按住controll键拖到辅助编辑区

技术分享

创建好关联后,ViewController.h的代码变为:

1 #import 
2 3 @interface ViewController : UIViewController4 @property (weak, nonatomic) IBOutlet UILabel *helloLable;5 - (IBAction)helloButton:(UIButton *)sender;6 7 @end

点击xib列表中的File‘s Owner,然后按command+option+6 打开Connection Inspector查看输出口和动作的关联,将View与ViewController从UIViewController中继承的view属性进行关联

技术分享

关联好的连接检查器如下所示

技术分享

3) 修改ViewController.m的代码

 

1 #import "ViewController.h" 2  3 @interface ViewController () 4  5 @end 6  7 @implementation ViewController 8  9 - (void)viewDidLoad {10     [super viewDidLoad];11     // Do any additional setup after loading the view, typically from a nib.12     13 }14 15 - (void)didReceiveMemoryWarning {16     [super didReceiveMemoryWarning];17     // Dispose of any resources that can be recreated.18 }19 20 - (IBAction)helloButton:(UIButton *)senhder {21     self.helloLable.frame = CGRectMake(10, 50, 300, 40);22     self.helloLable.text = @"Hello World!";23 }24 @end

 

8. 修改AppDelegate.m 文件

在Xcode默认创建的AppDelegate.h文件中已存在以下代码:

1 #import 
2 3 @interface AppDelegate : UIResponder
4 5 @property (strong, nonatomic) UIWindow *window;6 7 @end

Xcode默认为应用委托创建了window的属性,打开AppDlegate.m文件,引入ViewController.h

重写AppDlegate.m文件的- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions方法

其他代码不作修改,代码如下

1 #import "AppDelegate.h" 2 #import "ViewController.h" 3 @interface AppDelegate () 4  5 @end 6  7 @implementation AppDelegate 8  9 10 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {11     // Override point for customization after application launch.12     //创建window13     self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];14     //创建ViewController实例15     ViewController *viewController = [[ViewController alloc] initWithNibName:@"HelloWorldView" bundle:nil];16     //设置window根视图控制器17     self.window.rootViewController = viewController;18     self.window.backgroundColor = [UIColor whiteColor];19     [self.window makeKeyAndVisible];20     return YES;21 }

9. 运行程序

command+R

 

初学iOS很多内容不正确的,请批评指出,谢谢

转载于:https://www.cnblogs.com/csshaw/p/5475398.html

你可能感兴趣的文章
浅谈性能测试
查看>>
Winform 菜单和工具栏控件
查看>>
CDH版本大数据集群下搭建的Hue详细启动步骤(图文详解)
查看>>
巧用Win+R
查看>>
浅析原生js模仿addclass和removeclass
查看>>
Python中的greenlet包实现并发编程的入门教程
查看>>
java中遍历属性字段及值(常见方法)
查看>>
深入理解jQuery框架-框架结构
查看>>
YUI3自动加载树实现
查看>>
python知识思维导图
查看>>
当心JavaScript奇葩的逗号表达式
查看>>
App Store最新审核指南(2015年3月更新版)
查看>>
织梦MIP文章内容页图片适配百度MIP规范
查看>>
[Kali_BT]通过低版本SerialPort蓝牙渗透功能手机
查看>>
C语言学习总结(三) 复杂类型
查看>>
HNOI2018
查看>>
【理财】关于理财的网站
查看>>
Ubunt中文乱码
查看>>
《当幸福来敲门》读后
查看>>
【转】系统无法进入睡眠模式解决办法
查看>>