• UIImageView的contentMode属性


    UIViewContentMode 都有哪些值:

    typedef NS_ENUM(NSInteger, UIViewContentMode) {
        UIViewContentModeScaleToFill,
        UIViewContentModeScaleAspectFit,      // contents scaled to fit with fixed aspect. remainder is transparent
        UIViewContentModeScaleAspectFill,     // contents scaled to fill with fixed aspect. some portion of content may be clipped.
        UIViewContentModeRedraw,              // redraw on bounds change (calls -setNeedsDisplay)
        UIViewContentModeCenter,              // contents remain same size. positioned adjusted.
        UIViewContentModeTop,
        UIViewContentModeBottom,
        UIViewContentModeLeft,
        UIViewContentModeRight,
        UIViewContentModeTopLeft,
        UIViewContentModeTopRight,
        UIViewContentModeBottomLeft,
        UIViewContentModeBottomRight,
    };
    

    默认值是 0,也就是:

    UIViewContentModeScaleToFill
    

    一个个来理解下吧:

    • UIViewContentModeScaleToFill:表示完全填充在 frame 里 不按比例来。
    • UIViewContentModeScaleAspectFit:保持比例,都在 frame 内。
    • UIViewContentModeScaleAspectFill:保持比例,填满但 frame 外也有。
    • UIViewContentModeRedraw:每次设置或更改frame的时候自动调用drawRect.

    其他的是相似的,好理解:

    • UIViewContentModeCenter:这个 image 的中心与 frame 的中心重合。
    • UIViewContentModeTop:这个 image 的上边缘与 frame 的上边缘重合。
    • UIViewContentModeBottom:这个 image 的下边缘与 frame 的下边缘重合。
    • UIViewContentModeLeft:这个 image 的左边缘与 frame 的左边缘重合。
    • UIViewContentModeRight:这个 image 的右边缘与 frame 的右边缘重合。
    • UIViewContentModeTopLeft:类似。
    • UIViewContentModeTopRight:类似。
    • UIViewContentModeBottomLeft:类似。
    • UIViewContentModeBottomRight:类似。

    经常用到的:1.比如长图的显示 按一定的比例只显示中间的一部分 其他的裁剪掉 

       self.imageView.contentMode = UIViewContentModeScaleAspectFill;
       self.imageView.clipsToBounds = YES;
  • 相关阅读:
    PyQt5 -1 最基本的小窗口
    浅谈线段树
    最小生成树问题
    最短路问题
    多重背包问题
    02背包(嘻嘻,完全背包)
    01背包例题
    背包问题(好奇怪)
    关于深搜及广搜
    搜索回溯(第二)
  • 原文地址:https://www.cnblogs.com/junhuawang/p/4798804.html
Copyright © 2020-2023  润新知