UIImageView 图片视图
UIImage (存图片) —> UIImageView(显示图片的视图)
uiimage 是图片,不是控件;他的父类为NSObject;
UIImageView是加载图片的控件,父类为UIView
核心属性 image
UIImageView 图片视图:
-(void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event {
//把self.view 下 tag 为135的子视图 取出
UIImageView *imageView = [self.view viewWithTag:IMAGE_TAG];
imageView.image = [UIImage imageNamed:[NSString stringWithFormat:@"abc%ld",self.imageIndex++ % 4 + 1]];
}
- (void)viewDidLoad {
[super viewDidLoad];
self.imageIndex = 1;
//创建图片视图 通过该初始化方法创建 图片视图,如果不设置frame,就是用使用图片本身的宽高,做为imageView的frame的宽高
// UIImageView *imageView = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"abc"]];
// imageView.frame = CGRectMake(50, 200, 200, 200);
UIImageView *imageView = [[UIImageView alloc]initWithFrame:CGRectMake(50, 200, 300, 200)];
imageView.image = [UIImage imageNamed:[NSString stringWithFormat:@"abc%ld",self.imageIndex]];
imageView.backgroundColor = [UIColor greenColor];
/*UIViewContentModeScaleToFill, 默认 缩放填充慢 会变形
UIViewContentModeScaleAspectFit, 不会变形 全部显示图片 imageView可能会留白
UIViewContentModeScaleAspectFill, 不会变形,imageView不会留白 图片可能会显示不全
*/
imageView.contentMode = UIViewContentModeScaleAspectFill;
//第三种 必须配合 切割使用
imageView.clipsToBounds = YES;
imageView.tag = IMAGE_TAG;
[self.view addSubview:imageView]; //+1
}