iOS UI基础学习 Note_dayOne

iOS模拟器启动过程

  • 在Deployment Info的Main Interface中跳转到Main.storyboard
    Main.storyboard(故事板)跳转至Storyboard Enter Point指向的View
    Controller 并加载其中View中的控件

View Controller 中的控件与ViewController.m中的代码块进行关联

有3种方式:

  • 方式一:在ViewController.m先编写好代码
    -(IBAction)changeSize{

    }

则在行数的后面产生一个可以与Main.storyboard控件连接的小圆点
dayOne_01

  • 方式二:右键Main.storyboard控件,在弹出的ConnectionsInspector(连接检查器)窗口找到对应的动作属性与ViewController.m中的代码块进行关联 例如:
    dayOne_02

  • 方法三(推荐方法):在Main.storyboard中,按住control + 拖动控件到ViewController.m 可以创建与之关联的代码 例如:
    dayOne_03
    dayOne_04
    dayOne_05
    以上方法均可以关联属性和方法

一些UIView的常见方法

  • 修改颜色
    -(IBAction)changeColor:(id)sender{
    self.label.textColor = [UIColor redColor];
    }
  • 改变大小
 -(IBAction)changeBig:(id)sender {
    self.label.font = [UIFont systemFontOfSize:40.f];
    CGPoint p = self.redUIView.center;
    p.y += 100;
    p.x += 100;
    self.redUIView.center = p;
}
  • 改变位置
    -(IBAction)changeLocation:(id)sender{
    self.label.textAlignment = NSTextAlignmentCenter;
    self.label.center = CGPointMake(self.view.frame.size.width *0.5, self.view.frame.size.height *0.5);   
}
  • 改变内容
    - (IBAction)changetext {
    self.label.text = @"Thank u,jobs";
}

UIView 尺寸和位置

  • frame方法
    frame是CGRect类型定义的结构体,可以改变指定控件的位置和尺寸,前面两个修改位置,后面两个修改尺寸
- (IBAction)frame:(id)sender {
    self.label.frame = (CGRect){{100,100},{100,100}};
}
  • bounds方法
    bounds方法同样是CGRect类型定义的结构体,不同的是bounds可以改变指定控件的尺寸而不能修改控件的位置
- (IBAction)bounds {
    self.label.bounds = CGRectMake(0, 0 , 150, 300);
  • center方法
    center方法是CGPoint类型定义的结构体,与bounds方法相反,可以修改指定控件的位置而不能修改其代销
- (IBAction)center:(id)sender {
    CGPoint p = self.label.center;
    p.x += 50;
    self.label.center = p;
}

父控件和子控件

例如在ViewController中View中的所有控件的父控件就是View,View中还可以添加UIView,添加的UIView的父控件就是View,而View父控件是UIWindow.可以往新添加的UIView添加子控件
dayOne_6
如上图中,View的子控件是Lable,changeBig…..RedUI View 等等
而RedUI View中还有一个子控件Label

UIView常见的属性和方法

  • 查看某控件的所有子控件
@property(nonatomic,readonly) UIView *superview;
 NSLog(@"%@",[self.superview subviews]);
  • 查看某控件的父控件
@property(nonatomic,readonly) UIView *superview;
 NSLog(@"%@",[self.superview superview]);
  • 控件的ID(标识),父控件可以通过tag来找到对应的子控件
UIView *sv = [UIView alloc]initWithTag:1];
  • 添加一个子控件
 UISwitch *bt = [[UISwitch alloc]init];
    [self.redUIView addSubview:bt];
  • 将自己从父控件中移除
 - (IBAction)remove {
    [self.redUIView removeFromSuperview];
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值