這兩種方式,效果一樣?我指的是性能方面
歡迎選擇我的課程,讓我們一起見證您的進(jìn)步~~
修改一個視圖的frame,或是將視圖從父視圖上移除會直接導(dǎo)致呼叫該視圖的layoutSubviews方法,而且如果設(shè)定了contentMode為UIViewContentModeRedraw的話,也會導(dǎo)致呼叫drawRect方法。此時如果你自訂了這兩個方法來做一些繪圖和佈局工作,將會消耗CPU和GPU來做你的工作。
因此,如果只是為了隱藏視圖的話,直接使用hidden屬性即可。
一般情況下用hiden就好了,但如果有約束需要改或需要layoutsubview,還是移除或改frame的好。
隱藏的話直接設(shè)定hidden就好啦,不然hidden這個名字直接翻譯過來就是隱藏,不用幹嘛呢~
一般hidden比較可靠 因為你不用去更改原來的frame 當(dāng)你需要再次顯示的時候 直接修改屬性就可以了。每次都更改frame 不僅慢 而且修改原來控制項 。對於約束的情況 更改frame的話 可以不用重新約束 不然還得卸載constraint 。分情況看吧