美文网首页
UIImageView中的一些注意点

UIImageView中的一些注意点

作者: 爱霉霉 | 来源:发表于2015-06-17 23:14 被阅读185次

contentMode属性

  • 带有scale单词的:图片有可能会拉伸

    • UIViewContentModeScaleToFill
      • 将图片拉伸至填充整个imageView
      • 图片显示的尺寸跟imageView的尺寸是一样的
    • 带有aspect单词的:保持图片原来的宽高比
      • UIViewContentModeScaleAspectFit
        • 保证刚好能看到图片的全部
      • UIViewContentModeScaleAspectFill
        • 拉伸至图片的宽度或者高度跟imageView一样
  • 没有scale单词的:图片绝对不会被拉伸,保持图片的原尺寸

    • UIViewContentModeCenter
    • UIViewContentModeTop
    • UIViewContentModeBottom
    • UIViewContentModeLeft
    • UIViewContentModeRight
    • UIViewContentModeTopLeft
    • UIViewContentModeTopRight
    • UIViewContentModeBottomLeft
    • UIViewContentModeBottomRight

小语法点

  • 不能直接修改:OC对象的结构体属性的成员
  • 下面的写法是错误的
imageView.frame.size = imageView.image.size;
  • 正确写法
CGRect tempFrame = imageView.frame;
tempFrame.size = imageView.image.size;
imageView.frame = tempFrame;

initWithImage:方法

  • 利用这个方法创建出来的imageView的尺寸和传入的图片尺寸一样

修改frame的3种方式

  • 直接使用CGRectMake函数
imageView.frame = CGRectMake(100, 100, 200, 200);
  • 利用临时结构体变量
CGRect tempFrame = imageView.frame;
tempFrame.origin.x = 100;
tempFrame.origin.y = 100;
tempFrame.size.width = 200;
tempFrame.size.height = 200;
imageView.frame = tempFrame;
  • 使用大括号{}形式
imageView.frame = (CGRect){{100, 100}, {200, 200}};
  • 抽取重复代码

    • 将相同代码放到一个新的方法中
    • 不用的东西就变成方法的参数
  • 图片的加载方式

    • 有缓存
    UIImage *image = [UIImage imageNamed:@"图片名"];
    
      - 使用场合:图片比较小、使用频率较高
      - 建议把需要缓存的图片直接放到Images.xcassets
    
    • 无缓存
    NSString *file = [[NSBundle mainBundle] pathForResource:@"图片名" ofType:@"图片的扩展名"];
    UIImage *image = [UIImage imageWithContentsOfFile:@"图片文件的全路径"];
    
      - 使用场合:图片比较大、使用频率较小
      - 不需要缓存的图片不能放在Images.xcassets
    
    • 放在Images.xcassets里面的图片,只能通过图片名去加载图片
  • 延迟做一些事情

[abc performSelector:@selector(stand:) withObject:@"123" afterDelay:10];
// 10s后自动调用abc的stand:方法,并且传递@"123"参数
  • 音频文件的简单播放
// 创建一个音频文件的URL(URL就是文件路径对象)
NSURL *url = [[NSBundle mainBundle] URLForResource:@"音频文件名" withExtension:@"音频文件的扩展名"];
// 创建播放器
self.player = [AVPlayer playerWithURL:url];
// 播放
[self.player play];

相关文章

  • UIImageView中的一些注意点

    contentMode属性 带有scale单词的:图片有可能会拉伸UIViewContentModeScaleTo...

  • UIImageView 注意点

    1、 UIImageView的监听方法2、 如何将图片保存到本地相册3、 SDWebImage的常用方法 一、在很...

  • iOS UIImageView拉伸注意点

    先设定图片让UIImageView有个frame 然后根据图片的高来拉伸它的宽 反之亦然,具体情况具体分析吧!

  • iOS设置图片圆角

    PS:记录自己工作学习中的一些知识; 一、UIImageView iOS9之后:UIImageView使用以下方法...

  • 2020-06-11

    图片左右圆角不一致需要注意的坑 UIImageView *imgView = [[UIImageView allo...

  • swift3.0----UIImageView

    UIImageView图片中包括单击手势,以及UIImageView的一些基本用法。

  • iOS Quartz 2D绘图知识详解

    ** Quartz** 需要注意的是在UIImageView的子类中重写drawRect:是非法的,你不能把自己的...

  • 播放动图的方案

    使用UIImageView来显示图片,使用UIImageView里的动画数组来实现动画效果,但是需要注意的是,用这...

  • UITableView中的一些注意点

    性能优化 内存的循环引用机制:每当需要一个模型数据就创建一个内存给它,这种做法太耗内存,所以我们利用循环引用的方法...

  • UI总结(二)

    手势 状态: 注意:UIImageView 和UILabel 用户交互(userInteractionEnable...

网友评论

      本文标题:UIImageView中的一些注意点

      本文链接:https://www.haomeiwen.com/subject/oajsqttx.html