首页 > 代码库 > 002-UIImageView和UIButton对比 UIImageView的帧动画 格式符补充 加载图片两种方式 添加删除SUBVIEW

002-UIImageView和UIButton对比 UIImageView的帧动画 格式符补充 加载图片两种方式 添加删除SUBVIEW

一》.UIImageViewUIButton对比

  • 显示图片

1> UIImageView只是一种图片(图片默认会填充整个UIImageView)  image\setImage:

2> UIButton能显示2种图片

* 背景 (背景会填充整个UIButton)  setBackgroundImage:forState:

* 前置(覆盖在背景上面的图片,按照之前的尺寸显示)  setImage:forState:

* 还能显示文字

  • 点击事件

1> UIImageView默认是不能响应点击事件

2> UIButton能响应点击事件 : addTarget:action:forControlEvents:

  • 使用场合

1> UIImageView : 只显示图片,不监听点击,点击了图片后不做任何反应

2> UIButton : 既显示图片,又监听点击,点击了图片后做一些其他事情

  • 继承结构

1> UIButton之所以能添加监听器来监听事件,是因为它继承自UIControl

2> UIImageView之所以不能添加监听器来监听事件,是因为它直接继承自UIView

 


 

二》.UIImageView的帧动画

@property(nonatomic,copy) NSArray *animationImages;// 设置需要播放的图片组(会按照数组顺序播放)
@property(nonatomic) NSTimeInterval animationDuration; // 动画的持续时间  TimeInterval:时间间隔
@property(nonatomic)NSInteger animationRepeatCount; // 动画执行次数(默认情况下是无限执行)
- (void)startAnimating; // 开始动画
- (void)stopAnimating; // 结束动画

 

- (void)isAnimating; // 是否正在执行动画

 


 

三》.格式符补充

%03d : 每个整数占据3个位置,多出的位置用0填充

例如:

*  [NSString stringWithFormat:@"%03d",0];  返回的是@"000"

*  [NSString stringWithFormat:@"%03d",5];  返回的是@"005"

*  [NSString stringWithFormat:@"%03d",15];  返回的是@"015"

*  [NSString stringWithFormat:@"%02d",6];  返回的是@"06"

 


 

四》.加载图片两种方式

1.有缓存及内存未消亡占用内存

UIImage *image = [UIImage imageNamed:@"whb.png"];

2.无缓存  及内存释放不占用内存

NSString *path = [NSBundle mainBundle] pathForResource:@"whb.png" ofType:nil]; // 获取全路径UIImage *image = [[UIImage alloc] initWithContentsOfFile:path]; //根据路径来初始化创建图片

 


 

 五》.添加删除SUBVIEW

1. 添加

[self.view addSubview:customView];

 

2. 删除一个view上面所有的subview

for(UIView *subview in [self.view subviews]) {

    [subview removeFromSuperview];

}