iOS 中 xib 里给个控件设好约束,代码动态控制该控件的显示和隐藏,隐藏了约束貌似还在??
这种会导致虽然隐藏了 但是会空出一块,求解决思路,各路大神!!!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
这种会导致虽然隐藏了 但是会空出一块,求解决思路,各路大神!!!
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(5)
能不能看看你想做的效果?如果你是隐藏之后让其他控件来代替这个位置。你可以改变其他控件的frame。当你需要隐藏的时候。这样就可以遮蔽了。
hide属性只是控制控件是否显示出来,你可以动态的修改一下约束。如果使用自动布局就不要自己修改frame,会导致很多莫名其妙的错误。
空出一块是正常的,autoLayout 就是这样,即使
hidden = YES
,算位置的时候它还是会把这个 view 排进去,只是不显示,所以会空出一块。如果你是从上往下排的可以试着把 height 的 constraint 设成0,横排可以把 width 设成 0。具体情况具体分析吧。
即使隐藏了控件,约束是不会取消的.说白了,控件还在那,只是看不到而已,而且hidden = YES的话,也不会渲染它.如果你想把约束去掉的话,直接移除约束就好.调用view的 removeConstraints方法.
不用想那么复杂, Hidden 完, 高度为0 , 后面的就自动上去了