IOS 圖片不變形顯示

主要內(nèi)容:

1莫杈、contentMode
2、layer contentsRect

contentMode 就是描述內(nèi)容的填充模式。

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,
};
網(wǎng)上截圖.png

contentsRect
/* A rectangle in normalized image coordinates defining the

  • subrectangle of the `contents' property that will be drawn into the
  • layer. If pixels outside the unit rectangles are requested, the edge
  • pixels of the contents image will be extended outwards. If an empty
  • rectangle is provided, the results are undefined. Defaults to the
  • unit rectangle [0 0 1 1]. Animatable. */
    在現(xiàn)在的圖像坐標(biāo)系統(tǒng)中,contentsRect描述了一個在layer層重畫的一個子矩形棒呛。控制圖層內(nèi)容的顯示域携。

在實際應(yīng)用中,類似微信朋友圈鱼喉,照片的顯示秀鞭,當(dāng)顯示多張圖片的時候趋观,由于我們會固定顯示view 的大小為一個矩形,但是如果我們直接將照片放入會發(fā)生變形锋边。

變形圖片.png

但是在大多數(shù)情況下面我們都希望能夠不變形皱坛。圖片按照長寬來分,大概分為3種豆巨,W>H , W=H, W <H剩辟, 這三種情況。舉個例子往扔,在我們要顯示圖片的UIImageView是一個W=H的情況贩猎。所以要求不變形,主要有兩個方法:

例子:


1: W > H
    UIImageView  *squerImage = [[UIImageView alloc]initWithFrame:CGRectMake(30, 300, 100, 100)];
    squerImage.layer.borderColor = [UIColor redColor].CGColor;
    squerImage.layer.borderWidth = 1;
    squerImage.layer.masksToBounds = true;
    
    UIImage *widthImage = [UIImage imageNamed:@"zisehua.jpg"];
    squerImage.image = widthImage;
    squerImage.contentMode = UIViewContentModeScaleAspectFill;
    
    [self.view addSubview:squerImage];

結(jié)果:

W > H 顯示中間.png

2: H > W

    UIImageView *qingting = [[UIImageView alloc]initWithFrame:CGRectMake(30, 430, 100, 100)];
    qingting.layer.borderColor = [UIColor redColor].CGColor;
    qingting.layer.borderWidth = 1;
    qingting.layer.masksToBounds = true;
    
    
    UIImage *qingtingImage = [UIImage imageNamed:@"qingting.jpg"];
    qingting.image = qingtingImage;
    qingting.layer.contentsRect = CGRectMake(0, 0,1, qingtingImage.size.width/qingtingImage.size.height);
    qingting.contentMode = UIViewContentModeScaleToFill;
    
    [self.view addSubview:qingting];

結(jié)果:

H > W 顯示上面.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末萍膛,一起剝皮案震驚了整個濱河市吭服,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌蝗罗,老刑警劉巖艇棕,帶你破解...
    沈念sama閱讀 206,723評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異串塑,居然都是意外死亡沼琉,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,485評論 2 382
  • 文/潘曉璐 我一進(jìn)店門桩匪,熙熙樓的掌柜王于貴愁眉苦臉地迎上來打瘪,“玉大人,你說我怎么就攤上這事吸祟∩龋” “怎么了?”我有些...
    開封第一講書人閱讀 152,998評論 0 344
  • 文/不壞的土叔 我叫張陵屋匕,是天一觀的道長葛碧。 經(jīng)常有香客問我,道長过吻,這世上最難降的妖魔是什么进泼? 我笑而不...
    開封第一講書人閱讀 55,323評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮纤虽,結(jié)果婚禮上乳绕,老公的妹妹穿的比我還像新娘。我一直安慰自己逼纸,他們只是感情好洋措,可當(dāng)我...
    茶點故事閱讀 64,355評論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著杰刽,像睡著了一般菠发。 火紅的嫁衣襯著肌膚如雪王滤。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,079評論 1 285
  • 那天滓鸠,我揣著相機(jī)與錄音雁乡,去河邊找鬼。 笑死糜俗,一個胖子當(dāng)著我的面吹牛踱稍,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播悠抹,決...
    沈念sama閱讀 38,389評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼珠月,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了锌钮?” 一聲冷哼從身側(cè)響起桥温,我...
    開封第一講書人閱讀 37,019評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎梁丘,沒想到半個月后侵浸,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,519評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡氛谜,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,971評論 2 325
  • 正文 我和宋清朗相戀三年掏觉,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片值漫。...
    茶點故事閱讀 38,100評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡澳腹,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出杨何,到底是詐尸還是另有隱情酱塔,我是刑警寧澤,帶...
    沈念sama閱讀 33,738評論 4 324
  • 正文 年R本政府宣布危虱,位于F島的核電站羊娃,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏埃跷。R本人自食惡果不足惜蕊玷,卻給世界環(huán)境...
    茶點故事閱讀 39,293評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望弥雹。 院中可真熱鬧垃帅,春花似錦、人聲如沸剪勿。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,289評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至酱固,卻和暖如春二鳄,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背媒怯。 一陣腳步聲響...
    開封第一講書人閱讀 31,517評論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留髓窜,地道東北人扇苞。 一個月前我還...
    沈念sama閱讀 45,547評論 2 354
  • 正文 我出身青樓,卻偏偏與公主長得像寄纵,于是被迫代替她去往敵國和親鳖敷。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,834評論 2 345

推薦閱讀更多精彩內(nèi)容

  • 本篇文章是基于谷歌有關(guān)Graphic的一篇概覽文章的翻譯:http://source.android.com/de...
    lee_3do閱讀 7,099評論 2 21
  • CALayer 1.官方解釋 The CALayer class manages image-based cont...
    雪鸮閱讀 592評論 0 1
  • 轉(zhuǎn)載:http://www.reibang.com/p/32fcadd12108 每個UIView有一個伙伴稱為l...
    F麥子閱讀 6,157評論 0 13
  • 在iOS中隨處都可以看到絢麗的動畫效果程拭,實現(xiàn)這些動畫的過程并不復(fù)雜定踱,今天將帶大家一窺ios動畫全貌。在這里你可以看...
    每天刷兩次牙閱讀 8,465評論 6 30
  • 心血來潮和他們?nèi)ヅ涝缆瓷绞研瑥拿废然貙W(xué)校崖媚,一路出發(fā)。 路上無驚無險恤浪,跳動的最歡快只有打表器畅哑。 所遇酒店眾多,可惜...
    二貨不喝茶閱讀 1,478評論 0 0