iOS中氣泡對話框拉伸效果視圖的實現

在iOS開發中會遇到使用一個氣泡類型的視圖來做背景,有時候是UIView和UIImageView,有時候是對話框Button,

如果直接設置氣泡圖片的話,圖片在拉伸過程中會把氣泡的小嘴也拉大,而且如果是Button的話,內容也有可能會添加到小嘴的地方,

在iOS6後,使用 resizableImageWithCapInsets 重構圖片大小拉伸的設置可以解決這個問題。


原理就是把這個UIImage的中間部分,沒有小嘴的一個部分取出來進行拉伸,而小嘴的部分不變,如果是Button的話,還需要設置內容

在UIButton這個content視圖上的邊距。


UIImage * backImage;

backImage = [UIImage imageNamed:@"chatfrom_bg_normal.png"];

backImage = [backImage resizableImageWithCapInsets:UIEdgeInsetsMake(35, 22, 10, 10)];

backImageView.image = backImage;

backImageView.frame = CGRectMake(, , , );


    



如果UIimage是給UIbutton來設置的話,還需要這樣寫,

button.contentEdgeInsets = UIEdgeInsetsMake(kContentTop, kContentLeft, kContentBottom, kContentRight);//這四個參數就是button的內容對視圖的邊距,自己調整值來看效果。


      



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章