XCode Interface Builder开发——1

XCode Interface Builder开发——1

创建Xcode项目

  • 选择第二个选项
    1598960-20190203102326025-593026728.png

  • 选择Single View App,点击Next
    1598960-20190203102338195-172520705.png

  • 设置完后点击Next
    1598960-20190203102348879-1380169097.png


Xcode基本面板

  • 导航面板
    1598960-20190203102359442-1254241083.png

  • 工具栏项目
    1598960-20190203102409964-1275341971.png


简单的练手项目

要求:

创建三个按钮和一个label控件,通过对不同按钮添加事件来改变label的颜色和字体

步骤:

  • 将label和button拖拽入view controller的view中
    1598960-20190203102422606-67896540.png

  • 点击要修改的控件,通过打开attributes inspector将按钮名称分别改为红、黄、蓝色,label的text改为"这是一段文字“
    1598960-20190203102438644-5469771.png

  • 在ViewController的.m源文件中的类扩展中添加label属性:

@interface ViewController ()

@property(nonatomic,weak) IBOutlet UILabel *label; //任何需要连接到nib文件中的对象的实例变量都必须以IBOutlet关键字开头

@end
  • 将属性与刚刚拖入的label控件进行连线
    1598960-20190203102458722-1809730930.png

  • 在ViewController的.m源文件中写入代码:

//IBAction关键字告诉Interface Builder,此方法是一个操作,且可以被某个控件触发
-(IBAction)clickRedButton:(id)sender{
NSLog(@"按下了红色按钮!"); //在控制台通知
self.label.textColor=[UIColor redColor]; //改变label颜色
}

-(IBAction)clickYellowButton:(id)sender{
NSLog(@"按下了黄色按钮!");
self.label.textColor=[UIColor yellowColor];
self.label.font=[UIFont systemFontOfSize:20.f];
}

-(IBAction)clickblueButton:(id)sender{
NSLog(@"按下了蓝色按钮!");
self.label.textColor=[UIColor blueColor];
self.label.font=[UIFont systemFontOfSize:30];
}
  • 操作同上,将这三个方法分别与三个新建的按钮进行连线:
    1598960-20190203102524852-1629980192.png

  • 点击运行
    1598960-20190203102535747-1165331290.png


重点

  • IBOutlet

该关键字的作用是告诉Interface Builder,此实例变量将被连接到nib中的对象。你创建的任何需要连接到nib文件中的对象的实例变量都必须以IBOutlet关键字开头。打开Interface Builder时,它会在项目头文件中扫描此关键字,可以根据这些(且只能根据这些)变量将代码连接到nib。

@property(nonatomic,weak) IBOutlet UILabel *label;
//该处使用weak是因为控件一直是在ViewController类中存在的,并且为强引用,此处为了不影响控件,其属性应为弱引用,若为强引用可能会造成在ViewController中删除控件后,其引用个数仍为1的情况。
  • IBAction

该关键字告诉Interface Builder,此方法是一个操作,且可以被某个控件触发

  • 判断是否能连线
    1、属性(IBOutlet)都能连线
    2、方法(IBAction)需要看连线对象是否继承于UIControl

  • 连接方法补充:
    1598960-20190203102557917-2050527616.png

1598960-20190203102608522-25835874.png

转载于:https://www.cnblogs.com/Solist/p/10349763.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值