zoukankan      html  css  js  c++  java
  • ios UIImageView处理图片大小问题

    • UIImageView视图可以显示图片 
      实例化UIImageView有两种方法 
      第一种方法: UIImageView *myImageView = [[ UIImageView alloc] initWithImage: [UIImage imageNamed: @”demo”]]; 
      用该方法可以显示图片原有大小。

      第二种方法: UIImageView *myImageView = [[UIImage alloc] initWithFrame: self.view.bounds] 
      该方法会按指定大小显示图片,而不管图片的原有大小,因而会造成图片变形。

    在很多情况下,既需要按指定大小的范围中放置图片,又不要造成图片变形。解决该问题可以设置UIImageView的contentMode属性。contentMode为一个枚举:

    typedef NS_ENUM(NSInteger, UIViewContentMode){
        UIViewContentModeScaleToFill,
        UIViewContentModeScaleAspectFit,
        UIViewContentModeScaleAspectFill,
        UIViewContentModeRedraw,
        UIViewContentModeCenter,
        UIViewContentModeTop,
        UIViewContentModeBottom,
        UIViewContentModeLeft,
        UIViewContentModeRight,
        UIViewContentModeTopLeft,
        UIViewContentModeTopRight,
        UIViewContentModeBottomLeft,
        UIViewContentModeBottomRight
    };

    其中最常用的三种模式是: 

    UIViewContentModeScaleFill: 会把图片填充到图片视图中; 
    UIViewContentModeScaleAspectFit: 会使得图片以原有的高宽比以适应图片视图; 
    UIViewContentModeScaleAspectFill: 首先要设置图片视图的clipsToBounds属性为YES,使图片以原有高宽比填充整个图片视图,超出的部分会被剪辑掉; 
    因此一般设置图片视图模式为UIViewContentModeScaleAspectFit。

  • 相关阅读:
    葡萄庄园 [图论]
    硬币游戏 [博弈论, 思维题]
    烹饪 [容斥]
    BZOJ1597 [Usaco2008 Mar]土地购买 [斜率优化]
    TCP IP协议
    soap协议
    xml的语法规则
    fiddler的使用
    常见默认端口
    智能休眠时间的使用
  • 原文地址:https://www.cnblogs.com/sunfuyou/p/6285562.html
Copyright © 2011-2022 走看看