git - iOS开发隐藏一个View是直接设置hidden属性,还是将frame设置为0
天蓬老师
天蓬老师 2017-04-17 17:40:45
0
11
1239

这两种方式,效果一样?我指的是性能方面

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回覆(11)
大家讲道理

修改一個視圖的frame,或是將視圖從父視圖上移除會直接導致呼叫該視圖的layoutSubviews方法,而且如果設定了contentMode為UIViewContentModeRedraw的話,也會導致呼叫drawRect方法。此時如果你自訂了這兩個方法來做一些繪圖和佈局工作,將會消耗CPU和GPU來做你的工作。

因此,如果只是為了隱藏視圖的話,直接使用hidden屬性即可。

刘奇

設定 hidden 比較常見。

迷茫

對使用者來說一樣,不過還是系統的hiden比較可靠。

黄舟

可以這樣[self.xxx removeFromSuperview],看需求了

大家讲道理

hiden更好

阿神

hidden了之後他還是要佔據位置的,他的相關限制也都存在,看需求了

大家讲道理

如果有子視圖還是用hidden或removefromsuperview

Peter_Zhu

一般情況下用hiden就好了,但如果有約束需要改或需要layoutsubview,還是移除或改frame的好。

Peter_Zhu

隱藏的話直接設定hidden就好啦,不然hidden這個名字直接翻譯過來就是隱藏,不用幹嘛呢~

伊谢尔伦

一般hidden比較可靠 因為你不用去更改原來的frame 當你需要再次顯示的時候 直接修改屬性就可以了。每次都更改frame 不僅慢 而且修改原來控制項 。對於約束的情況 更改frame的話 可以不用重新約束 不然還得卸載constraint 。分情況看吧

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!