iOS:UIView、UIControl、UIButton、UILabel简单的属性和方法常识

常见属性和方法

一 、UIVIew 常见属性
1.frame 位置和尺寸(以父控件的左上角为原点(0,0))
2.center 中点 (以父控件的左上角为原点(0,0))
3.bounds 位置和尺寸(以自己的左上角为原点 (0,0))
4.transform 形变属性(缩放,旋转,平移)
5.backgroundColor 背景颜色
6.tag 标识(父控件可以根据这个标识找到对应的子控件,同一个父控件中的子控件不要一样)
7. hidden 设置是否要隐藏
8.alpha 透明度(0~1);
9.opaque 不透明度(0~1);
10.userInteractionEnabled 能否跟用户进行交互(YES 能交互)
11.superView 父控件
12.subviews 子控件
13.contentMode 内容显示的模式 拉伸自适应
例如:
[view viewWithTag:10];

UIView常见方法
1.addSubview
添加子控件,被添加到最上面(subviews中的最后面)

2.removeFromSuperview
从父控件中移除

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

4.insertSubview:atIndex:
添加子控件到指定的位置

5.利用两个类方法来执行动画的两个方法
+(void) beginAnimations:(NSString *)animationID context:(void *)context;
/**..需要执行动画的代码..**/
+(void) commitAnimations;

6.利用blok 执行动画
/*
 duration 动画持续时间 
 animations 存放需林执行动画的代码
 completion 存放动画完毕后需要执行的操作代码
 */
+ (void) animateWithDuration:(NSTimeInterval) duration animations:(void (^)(void))animations completion:(void(^)) (BOOL finished) completion


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

2.继承了UIControl的子类
UIButton.UISlider.UISwitch .UIDatePicker 等等

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

1>.先看它是否继承自UIControl
2>.再看它内部是否有delegate属性

4.常用属性

1>enabled 能否处理
2>contentVerticalAlignment 内容在垂直方向上的排布方式
3>contentHorizontalAlignment 内容在水平方向上的排布方式
5.常用方法
1> 添加监听器
/*
 target 监听器对象
 action 事件触发时所调用的方法,调用target的方法
 */
-(void)addTarget:(id)target action:(SEL)action forControlEvents:(UIControlEvents)controlEvents;

2> 删除监听器
//删除监听器后,事件触发时就不会再通知监听器了,也就不会再调用target的action方法了
-(void roemoveTarget:(id)target action:](SEL)action forControlEvents:](UIControlEvents) controlEvents);

3> 获得所有的监听器对象
-(NSSet *) allTargets;

三、UILabel
1.常见属性
1>text 所显示的文本内容
2>textColor 文本颜色
3> font 字体
4> shadowColor 文字的阴影颜色
5> shadowOffset 阴影的偏差距离(width水平方向的偏差距离,height垂直方向的念头距离,正数下边)
6> textAlignment 设置文字的排布方法(偏左,偏右,居中).
7>numberOfLines 允许文字最多有几行数(如果为0,自动换行).
四、UIButton
//.UISlider .UISwitch .UIDatePicker等等
1.常见属性

1>titleLabel 获取内部的UILabel 对象
2>imageView 获取内部的UIImageView对象

2.常见方法
1>设置内部UILabel 显示的文本内容
//设置按钮文本的时候不能 btn .titleLabel.text  = @"4324324";
- (void)setTitle:(NSString *)title forState:(UIControlState)state;                     // default is nil. title is assumed to be single line

2> 设置内部UILabel的文字颜色
- (void)setTitleColor:(UIColor *)color forState:(UIControlState)state UI_APPEARANCE_SELECTOR; // default if nil. use opaque white
3>设置内部UILabel 的文字阴影颜色
- (void)setTitleShadowColor:(UIColor *)color forState:(UIControlState)state UI_APPEARANCE_SELECTOR; // default is nil. use 50% black
4>设置内部UIImageView的图片
- (void)setImage:(UIImage *)image forState:(UIControlState)state;                      // default is nil. should be same size if different for different states
5>设置内部UIImageView的图片
- (void)setBackgroundImage:(UIImage *)image forState:(UIControlState)state UI_APPEARANCE_SELECTOR; // default is nil

6>下面两个方法需要交给子类去重写
//返回没物控部UILabel的frame (位置和尺寸)
-(CGRect)titleRectForContentRect:(CGRect)contentRect;
//返回内部UIImage的尺寸和位置
-(CGRect)imageRectForContentRect:(CGRect) contentRect;

7> 下面这些方法可以获取不同状态下的一些属性
- (NSString *)titleForState:(UIControlState)state;          // these getters only take a single state value
- (UIColor *)titleColorForState:(UIControlState)state;
- (UIColor *)titleShadowColorForState:(UIControlState)state;
- (UIImage *)imageForState:(UIControlState)state;
- (UIImage *)backgroundImageForState:(UIControlState)state;
- (NSAttributedString *)attributedTitleForState:(UIControlState)state NS_AVAILABLE_IOS(6_0);

 

转载于:https://www.cnblogs.com/XYQ-208910/p/4852677.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值