Xcode控件使用笔记:控件总结

载自:黑马程序教程

一、UIView常见属性

1.frame  位置和尺寸(以父控件的左上角为原点(00))

2.center 中点(以父控件的左上角为原点(00))

3.bounds  位置和尺寸(以自己的左上角为原点(00))

4.transform  形变属性(缩放、旋转)

5.backgroundColor 背景颜色

6.tag  标识(父控件可以根据这个标识找到对应的子控件,同一个父控件中的子控件tag不要一样)

7.hidden 设置是否要隐藏

8.alpha  透明度(0~1

9.opaque 不透明度(0~1

10.userInteractionEnabled 能否跟用户进行交互(YES能交互)

11.superview 父控件

12.subviews 子控件

13.contentMode 内容显示的模式


二、UIView常见方法

1.addSubview:

添加子控件,被添加到最上面(subviews中的最后面)


2.removeFromSuperview

从父控件中移除


3.viewWithTag:

父控件可以根据这个tag标识找到对应的子控件(遍历所有的子控件)


4.insertSubview:atIndex:

添加子控件到指定的位置


5.利用两个类方法执行动画

+ (void)beginAnimations:(NSString *)animationID context:(void *)context;

/* ...需要执行动画的代码..*/

+ (void)commitAnimations;


6.利用block执行动画

/*

 duration 动画持续时间

 animations 存放需要执行动画的代码

 completion  存放动画完毕后需要执行的操作代码

 */

+ (void)animateWithDuration:(NSTimeInterval)duration animations:(void (^)(void))animations completion:(void (^)(BOOL finished))completion


三、UIControl

1.只要继承了UIControl,就能简单处理一些事件(点击事件、值改变事件)


2.继承了UIControl的子类:

UIButtonUISliderUISwitchUIDatePicker等等


3.当需要监听一个子控件事件的时候,解决步骤:

1> 先看它是否继承自UIControl

2> 再看它内部是否有delegate属性


4.常用属性

1> enabled 能否处理事件,跟UIViewuserInteractionEnabled属性类似

2> contentVerticalAlignment内容在垂直方向上的排布方式

3> contentHorizontalAlignment内容在水平方向上的排布方式


5.常用方法

1> 添加监听器

/*

 target 监听器对象

 action  事件触发时所调用的方法,调用target的方法

 controlEvents 事件类型

 */

- (void)addTarget:(id)target action:(SEL)action forControlEvents:(UIControlEvents)controlEvents;


2> 删除监听器

// 删除监听器后,事件触发时就不会再通知监听器了,也就不会再调用targetaction方法了

- (void)removeTarget:(id)target action:(SEL)action forControlEvents:(UIControlEvents)controlEvents;


3> 获得所有的监听器对象

- (NSSet *)allTargets;


四、UILabel的常见属性

1.text 所显示的文本内容

2.textColor  文本颜色

3.font  字体

4.shadowColor 文字的阴影颜色

5.shadowOffset 阴影的偏差距离(width水平方向的偏差距离,正数右边、height垂直方向的偏差距离,正数下边)

6.textAlignment  设置文字的排布方式(偏左、偏右、居中)

7.numberOfLines 允许文字最多有几行(默认是1,如果为0,自动换行)


五、UIButton

1.常见属性

1> titleLabel 获取内部的UILabel对象

2> imageView 获取内部的UIImageView对象


2.常见方法

1> 设置内部UILabel显示的文本内容

// 设置按钮文本的时候不能  btn.titleLabel.text = @"4324324";

- (void)setTitle:(NSString *)title forState:(UIControlState)state;


2> 设置内部UILabel的文字颜色

- (void)setTitleColor:(UIColor *)color forState:(UIControlState)state;


3> 设置内部UILabel的文字阴影颜色

- (void)setTitleShadowColor:(UIColor *)color forState:(UIControlState)state;


4> 设置内部UIImageView的图片

// 设置内部UIImageView的图片不能:btn.imageView.image = [UIImage imagedName:@"0.png"];

- (void)setImage:(UIImage *)image forState:(UIControlState)state;


5> 设置背景图片

- (void)setBackgroundImage:(UIImage *)image forState:(UIControlState)state;


6> 下面两个方法需要交给子类去重写

// 返回内部UILabelframe(位置和尺寸)

- (CGRect)titleRectForContentRect:(CGRect)contentRect;

// 返回内部UIImageViewframe(位置和尺寸)

- (CGRect)imageRectForContentRect:(CGRect)contentRect;


7> 下面这些方法可以获取不同状态下的一些属性值

- (NSString *)titleForState:(UIControlState)state;     

- (UIColor *)titleColorForState:(UIControlState)state;

- (UIColor *)titleShadowColorForState:(UIControlState)state;

- (UIImage *)imageForState:(UIControlState)state;

- (UIImage *)backgroundImageForState:(UIControlState)state;

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值