[英]Most efficient way to hide a UIView
出于以下情况,这是隐藏视图的最佳方式?
一个人有没有其他人没有的好处吗? 在运行时节省资源方面? 特别是在具有可重用单元格的UITableView中,一个单元格可能不需要某些子视图。
这取决于你想要/需要完成什么。 对于可能会被重用的视图, view.hidden=TRUE
(我选择这种情况)和/或view.alpha=0.0
,并且可能操纵z-index以确保您的视图不再在面前。
我不确定将视图框架设置为CGRectZero
的好处,可能更适合在此时完全删除它。
简而言之,如果您不需要它,请不要保留它。
更新 :
使用提及表格单元格,还要考虑创建多个自定义单元格的可能性,尤其是在删除子视图导致布局问题时。 可以根据您设置的任何条件创建每个单元格。
更新2 :
根据下面留下的评论,如果单元格很复杂,通过代码绘制单元格可能是正确的解决方案。
使用UIView, alpha=0
具有可动画的优点,而hidden=YES
则没有。 frame=CGRectZero
也是可动画的,但效果却完全不同。 当动画alpha=0.0
将导致视图淡出而frame=CGRectZero
将使其看起来消失在左上角。 我不担心任何这些技术的系统资源费用,因为它们都非常轻量级。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.