IOS开发 UIView控件

1.万物皆对象

2.LBS:基于位置的服务(热门)

3.在启动XCODE创建项目的时候最好勾选 git

4.在SB界面中更改UILabel 之类的控件里面的内容,控件的frame会随着内容的大小而改变,但是在右侧的属性栏里面更改则不会影响frame

5.IBAction:SB界面原来叫Interface Builder 缩写为IB,

6.M_PI_4  代表45°  以此类推

 

// OC语法规定:不允许直接修改 某个对象中结构体属性的成员

  • 1
    2
    3
    4
    5
    6
    7
    8
    // 1.先取出frame
        CGRect tempFrame = _btn.frame;
      
        // 2.修改y值   // 这个能修改是因为,这个tempframe只是一个简单的结构体,而不是对象的结构体,对象的结构体是不能直接修改,但是单纯的结构体是可以的
        tempFrame.origin.y -= 50;
         
        // 3.重新赋值按钮的frame
        _btn.frame = tempFrame;

     

     

非常重要:注意辨别方法传入参数的类型,

  • 如 : - (IBAction)add:(id)sender
  • 由于传入的参数是id类型,所以不能使用点语法,如sender.tag就不能使用
  • 将(id)改为(UIButton *)就可以使用点语法了
  •  

block 块

  • 定义:可以给块传递参数,正如给函数传递一样。块也具有返回值。与函数不同的是,块定义在函数或者方法内部,并且能够访问在函数或者方法范围内块之外的任何变量。
  • Blocks的定义:
  • int (^MySum)(int, int) = ^(int a, int b) {
  •   return a+b;
  • };
  • 定义了一个叫MySum的blocks对象,它带有两个int参数,返回int。等式右边就是blocks的具体实现
  • Block可以访问局部变量,但是不能修改。
  •  
  • 在oc中方法调用block的一半格式:- (void)btn: (void (^)())block
  • void----没有返回值
  • (^)块的标志
  • ()没有参数

 

退出键盘的两种方式

  • resignFirstResponder
  • 当叫出键盘的那个控件(第一响应者)调用这个方法时,就能退出键盘
  • endEditing
  • 只要调用这个方法的控件内部存在第一响应者,就能退出键盘
  •  
  •  

通过代码创建UI并实现动作的一般流程

  • 1.搭建UI界面
  • 实例化控件(为控件指定各种属性)
  • 将实例化的控件添加到view中
  • 2.根据UI需求将程序运行中状态动态改变的
  •  
  •  
  • 1. 定义属性
  • 根据UI需求将程序中状态动态改变的控件定义属性,即相当于在storyboard中的创建UIOutlet步骤
  • @property (nonatomic, strong) UILabel *noLabel;
  • 2. 创建属性对应的控件,添加到视图
  • 实例化控件(为控件指定各种属性)
  • 将实例化的控件添加到view中
  • UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 20, 320, 40)];
  •     label.text = @"1/5";
  •     label.textAlignment = NSTextAlignmentCenter;
  •     [self.view addSubview:label];
  • 为有属性的控件分配属性:
  •     self.noLabel = label;
  • 3.创建按键点击时产生的动作(即创建方法)
  • 4.监听按钮的点击事件
  • [rightBtn addTarget:self action:@selector(rightClick) forControlEvents:UIControlEventTouchUpInside];
  •  
  •  

IOS开发 UIView控件,,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。