day1

来源:互联网 发布:js向下取整 编辑:程序博客网 时间:2024/06/04 01:35

Day1

一、示例程序

  • 一个Label
  • 三个Button—>三种方式:

    • 1.直接拖过来
    • 2.从别的地方复制一个
    • 3.按住option复制过来
  • 让监听按钮的点击事件和我们类中某个方法联系起来

    • 1.写对应的方法
    • 联系起来 IBAction
  • 拿到对应的属性来做事情

    • 1.写对应的属性
    • 2.将对应的属性和storyboard中的属性联系起来 IBOutlet
  • 在对应的方法中做对应的事情
    • 1.改变Label的字体颜
    • 2.改变Label的背景颜
    • 3.改变Label的文字内容
#pragma mark - 点击红色按钮    * -(IBAction)clickRedButton:(UIButton *)button{    * // 改变文字的颜色    * self.label.textColor = [UIColor redColor];    * // 改变文本的内容    * self.label.text = @"我是一段红色的文字";    * // 改变背景颜色    * self.label.backgroundColor = [UIColor greenColor];    * // 文字居中    * self.label.textAlignment = NSTextAlignmentCenter;    * // 改变文字的大小    * self.label.font = [UIFont systemFontOfSize:20.f];    * // 改变按钮的背景颜色    * button.backgroundColor = [UIColor redColor];    * }
  • 属性写到类扩展中,而不是写到头文件中

二、其他连线方式
* 常见的连线方式(直接连线,而不是先写属性)
* 多个xib中的对象拖到了一个属性中,会发生覆盖现象
* 多个xib中的按钮监听,连线到同一个方法,论点击哪一个,都会执行该方法
* 当一个按钮发生点击时,是可以让其执行两个方法的
* 如果连了线,属性被删除,会报错
* 如果连了线,方法被删除,会报错

三、UIView属性方法讲解
* 父控件和子控件的理解
* 在storyboard中只有UIView是可以在里面拖入子控件的,其他 控件不可以(必须通过代码添加)
* 拖入一个UIView控件,在里面添加一些子控件(UIView控件是控 制器的VIew的子控件,UIView控件是内部子控件的父控件)
* 在左侧查看层级管理
* 可以起名字
* UIView的常见属性
* superView :可以通过superView的get方法拿到对应的父控件
* subViews :当将一个控件添加到另外一个控件中时,该控件就 会成为另一个控件的子控件
* frame
* center
* bounds

  • UIView常见方法
    • addSubView: 添加子控件
    • removeFromSuperView: 删除控件(将自己从父控件中移除)
    • viewWithTag:
      • 1.可以通过tag来找到对应的控件
      • 2.可以作为标示来区分控件

四、加法计算器
* 搭建界面: UITextField输入框 + label + 输入框 + label + 结果Label + 计算按钮
* 业务逻辑:
* 1.获取到用户输入的内容
* 2.判断用户是否输入了值
* 3.相加
* 4.显示结果
* 监听按钮的点击
* 判断是否有值
* 计算结果
* 显示结果

#import "ViewController.h"@interface ViewController ()@property (weak, nonatomic) IBOutlet UITextField *num1TextField;@property (weak, nonatomic) IBOutlet UITextField *num2TextField;@property (weak, nonatomic) IBOutlet UILabel *resultLabel;@end@implementation ViewController- (void)viewDidLoad {    [super viewDidLoad];}- (IBAction)sum {    // 1. 拿到两个字符串    NSString *sum1String = self.num1TextField.text;    NSString *sum2String = self.num2TextField.text;    // 判断    if (sum1String.length == 0) {        [self showInfo:@"请输入第一个数"];        return;    }    if (sum2String.length == 0) {        [self showInfo:@"请输入第二个数"];        return;    }    // 2. 把字符串转成数值    NSInteger sum1 = [sum1String integerValue];    NSInteger sum2 = [sum2String integerValue];    // 3. 相加    NSInteger result = sum1 + sum2;    // 4. 显示结果    self.resultLabel.text = [NSString stringWithFormat:@"%zd", result];}- (void)showInfo: (NSString *)info{    // 创建对象    UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"输入有误" message:info delegate:nil cancelButtonTitle:@"我知道了" otherButtonTitles:nil, nil];    // 显示    [alertView show];}@end
0 0
原创粉丝点击