首页 > iOS 中 xib 里给个控件设好约束,代码动态控制该控件的显示和隐藏,隐藏了约束貌似还在??

iOS 中 xib 里给个控件设好约束,代码动态控制该控件的显示和隐藏,隐藏了约束貌似还在??

这种会导致虽然隐藏了 但是会空出一块,求解决思路,各路大神!!!


不用想那么复杂, Hidden 完, 高度为0 , 后面的就自动上去了


能不能看看你想做的效果?如果你是隐藏之后让其他控件来代替这个位置。你可以改变其他控件的frame。当你需要隐藏的时候。这样就可以遮蔽了。


hide属性只是控制控件是否显示出来,你可以动态的修改一下约束。如果使用自动布局就不要自己修改frame,会导致很多莫名其妙的错误。


空出一块是正常的,autoLayout 就是这样,即使hidden = YES,算位置的时候它还是会把这个 view 排进去,只是不显示,所以会空出一块。

如果你是从上往下排的可以试着把 height 的 constraint 设成0,横排可以把 width 设成 0。具体情况具体分析吧。


即使隐藏了控件,约束是不会取消的.说白了,控件还在那,只是看不到而已,而且hidden = YES的话,也不会渲染它.如果你想把约束去掉的话,直接移除约束就好.调用view的 removeConstraints方法.

【热门文章】
【热门文章】