iOS UI三大控件和应用程序启动流程

1.UIView

初始化方式:initWithFrame:

frame:frame就是一个矩形,该矩形就是一个结构体 CGRect类型 一个是确定位置 original: 里面包含(x,y) 通过x值和y值可确定该视图的位置; iOS的坐标体系中,左上角为坐标原点(0,0); 另外一个是确定视图大小的size:size中包含(width,height)


bounds:边框,也是一个矩形(CGRect),改变bounds的original,只会影响该视图上面的子视图的位置,不会影响自身在父视图上的位置。


center:视图的中心点

该点得位置肯定在该视图的中心,点(CGPoint),该点得具体值为

x=frame.original.x+frame.size.width/2;

y = frame.original.y + frame.size.height/2


视图相关属性

1.背景颜色的设置:backgroundColor 此属性的返回类型是:UIColor;得到颜色经常使用的方法是:[UIColor colorWithRed:0~1  Green:  Blue: alpha:0~1];

2.设置透明度:alpha :0 - 1.0之间

3.设置视图是否隐藏:

hidden:YES,隐藏

NO: 不隐藏。

4.得到该视图的父视图:

superView: 返回值为 UIView

5.得到该视图上面的所有的子视图: subViews: 返回值为NSArray。

6.为某个视图添加标记值:tag值,父视图可以通过tag值得到它上面特定的子视图


view的常用方法

1.添加子视图:[addSubView: subView];

2.从父视图上移出:[subView removeFromSuperView];

3.视图的层级交换



UILabel:父类为UIView,只要负责文字内容的展示。


在label上添加按钮,按钮是不可点击的。

要想点击

UIImageView 用户交互默认为NO

[self window setUserInteractionEnabeld:YES];


1.label的初始化方法使用的是父类的初始化方法:

[initWithFrame:]


2.label呈现文字内容的属性:text: 返回类型为NSString类型


3.文字的对齐方式:[label setTextAligment:(枚举值)];

只能设置水平的对齐方式,不能设置垂直的对齐方式

4.label文字属性的设置:

UIFont 可以设置文字的大小,字体。

5.label的文字颜色:

textColor该属性返回值为UIColor 

   UIImageView:主要负责图片(UIImage)的展示,还可以展示动图,父类为UIView

1.UIImageView的初始化方式:1).父类的初始化方式:initWithFrame:;  2)自己的初始化方式:initWithImage: 所需要的参数为UIImage类型

2.为UIImageView添加图片的属性:image 返回值类型为UIImage,

[imageView setImage:[UIImage imageNamed:@“图片名称.后缀名”]];



3.UIImageView呈现动图

a).为imageView添加一组图片的属性:animatioImages 返回值为数组,该数组中的元素类型为UIImage



b). 设置动画时长属性

animationDuration 返回值类型float,时间单位为秒。

   c).开启动画的方法:

startAnimating, 方法的使用[imageView startAnimating];


d).结束动画的方法

stopAnimating 使用方式为[imageView stopAnimating];

   e).设置动画重复次数的属性:

   animationRepeatCount


UIButton:

button的父类为UIControl,UIControl的父类为UIView。按钮更偏重于用户交互,而不是内容的显示

a).button的初始化方法:由于button有自己的初始化方法: buttonWithType:(枚举值) UIButtonType….

b).设置标题的方法:[button setTitle:@“标题” forState:(枚举值)]UIControlState…];


UIControlStateSelected状态需要配合 button.selected属性来使用 


c).button的frame属性:由于button使用的是自己的初始化方法,没有在初始化的时候给定frame,所以需要设置 button.frame = CGRectMake();


d).button添加点击事件

[button addTarget:self  action:@selector(btnAction:) forControlEvents:(枚举值)];枚举值都是以UIControlEvent...


UITextField : 文本输入框,父类为UIControl,更偏重于和用户的交互


a).初始化方式使用的为父类的初始化方法:

initWithFrame:

b).设置占位字符的属性:

placeHolder:返回值为NSStrng类型,只是提醒用户的作用,当用户输入内容之后,该文字就会消失

c).设置textField不能输入的属性:enabled: Boolean值,YES :可输入,NO:不可输入

d).设置键盘样式的属性:

keyboardType 枚举值

   

    e).自定义键盘样式:

    inputView:返回类型为 UIView

   

    f).获得输入的内容的属性:text

    g).回收键盘的方法:

    [textField

resignFirstResponder];

成为第一响应者

[textField

becomeFirstResponder];

h).协议代理方法

UITextFieldDelegate  所有的协议方法都是可选的:

(optional)

  1.-(BOOL)textFieldShouldBeginEditing: (UITextField *)textField; //是否开始编辑 

2.-(void)textFieldDidBeginEditing:(UITextField *)textField //已经开始编辑

3.-(BOOL)textFieldShouldEndEditing:(UITextField *)  //是否结束编辑


4.-(void)textFieldDidEndEditing:(UITextField *)  //已经结束编辑状态

5.- (BOOL)textFieldShouldReturn:(UITextField *)//点击return按钮所执行的代理方法


应用的启动流程(了解)

main()—>

UIApplicationMain{argc,argv,@“UIApplication”,NSStringFromClass([AppDelegate class])}—>

创建了整个应用程序对象,也就是UIApplication对象—>

创建了AppDelegate对象,也就是整个应用程序代理对象—>

将应用程序的代理指定为AppDelegate对象(app.delegate = appDelegate),根据info.plist文件配置整个应用程序—>

在didFinishLanchingWithOperations代理方法中创建主窗口和跟视图控制器,如果还有其他必要设置,也可以写在此方法中。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值