欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

ios開發(fā)圓角設(shè)置,iphone圓角界面設(shè)置

iOS: UIView,UILabel等 設(shè)置圓角的正確方式

之前的方式一般是這樣的:

創(chuàng)新互聯(lián)致力于互聯(lián)網(wǎng)網(wǎng)站建設(shè)與網(wǎng)站營銷,提供網(wǎng)站設(shè)計、成都網(wǎng)站建設(shè)、網(wǎng)站開發(fā)、seo優(yōu)化、網(wǎng)站排名、互聯(lián)網(wǎng)營銷、微信平臺小程序開發(fā)、公眾號商城、等建站開發(fā),創(chuàng)新互聯(lián)網(wǎng)站建設(shè)策劃專家,為不同類型的客戶提供良好的互聯(lián)網(wǎng)應(yīng)用定制解決方案,幫助客戶在新的全球化互聯(lián)網(wǎng)環(huán)境中保持優(yōu)勢。

label.layer.cornerRadius = 2;

label.layer.masksToBounds = YES /?label.layer.clipToBounds = YES

這樣會出現(xiàn)離屏渲染,如果是每個TableViewCell設(shè)置一些圓角,就會使列表滑動起來有明顯卡頓。

正確方式:

摒棄label.layer.masksToBounds = YES /?label.layer.clipToBounds = YES方法。

情形1:

對于不需要設(shè)置背景色的情況,只設(shè)置borderWidth、borderColor,cornerRadius,就可以實現(xiàn)圓角功能。

情形2:

對于設(shè)置背景色的情況,不去設(shè)置label的backgroundColor,而是直接設(shè)置label.layer.backgroundColor,這樣就可以實現(xiàn)單獨設(shè)置cornerRadius,顯示圓角的效果。

備注:

對于情形2,設(shè)置label的backgroundColor同時設(shè)置cornerRadius是不能正常顯示圓角的,再同時設(shè)置borderWidth、borderColor也不行。原因是:UILabel設(shè)置backgroundColor的行為,不再是設(shè)定layer的背景色而是為contents設(shè)置背景色。

iOS設(shè)置圓角的四種方法

cornerRadius屬性影響layer顯示的background顏色和前景框border,對layer的contents不起作用。故一個imgView(類型為UIImageView)的image不為空,設(shè)置imgView.layer的cornerRadius,是看不出顯示圓角效果的,因為image是imgView.layer的contents部分。

這種情況下將layer的masksToBounds屬性設(shè)置為YES,可以正確的繪制出圓角效果。但是cornerRadius0,masksToBounds=YES,會觸發(fā)GPU的離屏渲染,當一個屏幕上有多處觸發(fā)離屏渲染,會影響性能。通過勾選Instruments-Core Animation-Color Offscreen-Rendered Yellow,可以看到屏幕上觸發(fā)離屏渲染的會被渲染成黃色。離屏渲染的代價昂貴,蘋果也意識到會產(chǎn)生性能問題,所以iOS9以后的系統(tǒng)里能不產(chǎn)生離屏渲染的地方也就不用離屏渲染了。比如對UIImageView里png圖片設(shè)置圓角不會觸發(fā)離屏渲染。

通過設(shè)置view.layer的mask屬性,可以將另一個layer蓋在view上,也可以設(shè)置圓角,但是mask同樣會觸發(fā)離屏渲染。

有兩種方式來生成遮罩,一是通過圖片生成,圖片的透明度影響著view繪制的透明度,圖片遮罩透明度為1的部分view被繪制成的透明度為0,相反圖片遮罩透明度為0的部分view被繪制成的透明度為1。二是通過貝塞爾曲線生成,view中曲線描述的形狀部分會被繪制出來。

通過CPU重新繪制一份帶圓角的視圖來實現(xiàn)圓角效果,會大大增加CPU的負擔(dān),而且相當于多了一份視圖拷貝會增加內(nèi)存開銷。但是就顯示性能而言,由于沒有觸發(fā)離屏渲染,所以能保持較高幀率。下例是繪制一個圓形圖片,繪制其它UIView并無本質(zhì)區(qū)別。重新繪制的過程可以交由后臺線程來處理。

此方法就是在要添加圓角的視圖上再疊加一個部分透明的視圖,只對圓角部分進行遮擋。圖層混合的透明度處理方式與mask正好相反。此方法雖然是最優(yōu)解,沒有離屏渲染,沒有額外的CPU計算,但是應(yīng)用范圍有限。

以上四種方法的 Objective-C實現(xiàn)

iOS 設(shè)置圖片圓角的三種方式

方式一:通過 layer 設(shè)置圓角

最簡單的一種,但是影響性能,一般在正常的開發(fā)中使用很少

方式二:使用貝塞爾曲線UIBezierPath和Core Graphics框架畫出一個圓角

方式三:使用CAShapeLayer和UIBezierPath設(shè)置圓角

這種方式最好,內(nèi)存的消耗最少,而且渲染快速

新聞名稱:ios開發(fā)圓角設(shè)置,iphone圓角界面設(shè)置
當前URL:http://aaarwkj.com/article30/dsshdpo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設(shè)計品牌網(wǎng)站建設(shè)、網(wǎng)站營銷云服務(wù)器、ChatGPT網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都app開發(fā)公司
中文一级伦理一区二区| 亚洲中文波霸中文字幕| 亚洲二区中文字幕在线观看| 久草亚洲一区二区三区av| 欧美成人精品在线观看| 日本黄色免费在线观看网站| 亚洲精品一区久久狠狠欧美| 国产有码日产一区在线观看| 人妻巨乳一区二区三区| 黄色av一本二本在线观看| 丰满人妻少妇一区二区| 美女福利视频一区二区| 国产精品大片久久激情四射| 日韩av高清在线播放| 五月婷婷六月丁香伊人妞| 日韩国产人妻一区二区| 中文字幕日产乱码一二三区| 极品大胸美女被啪啪的高潮| 日本熟妇中文字幕系列| 日韩中字伦理熟妇人妻| 国产三级国产精品三级| 天堂免费av在线播放| 综合激情网激情五月天| 91久久国产香蕉熟女| 欧美一级特黄大片做受另类| av一区二区三区高潮| 中文字幕人妻久久精品一区| 国产麻豆三级在线观看| 美女高潮呻吟免费观看久久久| 精品久久av一区二区三区| 最新国产情侣夫妻激情| 亚洲成av人天堂影院| 91精品国产色综合久久不| 成年女人大片免费观看版| 91国内精品手机在线高清| 国产精品一区二区欧美激情| 日韩人妻中文字幕专区| 亚洲欧美成人自偷自拍一区| 青春草草视频在线观看| 九九热视频在线观看色| 国产日韩精品一区二区在线|