ios 隐藏UILabel而不占用任何空间

ep6jt1vc  于 2023-08-08  发布在  iOS
关注(0)|答案(4)|浏览(145)

我知道有两种方法可以隐藏UILabel。我可以将alpha设置为0或将labels属性'hidden'设置为YES。那就是

// UILabel *label = ...
label.alpha = 0.0f;

// or
label.hidden = YES;

字符串
然而,在这两种情况下,标签将占用空间(其宽度和高度)。
是否可以隐藏标签,使其不会占用任何垂直/水平空间?一个可能的方法是将宽度/高度设置为0,我猜。但也许有更好的办法。

fafcakar

fafcakar1#

我刚刚有这个问题,发现你必须将文本设置为一个空字符串,才能让它不占用空间。(iOS 9)

label.text = @"";
 label.hidden = YES;

字符串
iOS有很多bug。

aij0ehis

aij0ehis2#

最简单的处理方法是使用Stack Views。在堆栈视图中嵌入标签,堆栈视图将在内部处理间距。其他属性,如对齐,间距可以根据要求进行调整。确保重新建立堆栈视图和相邻元素之间的约束,因为一旦视图被添加到堆栈视图中,所有约束都将被清除

ckx4rj1h

ckx4rj1h3#

你可以将帧高度值设置为0以隐藏标签。[使用自动布局?如果您设置正确,这可能就足够了]
如果没有自动布局,则要向上移动下面的内容,这取决于通过编程将下面内容的框架设置为新框架[将所有组件y value更改为yvalue-label.height ]

yebdmbv4

yebdmbv44#

不占用空间隐藏UILabel

Swift版本:

myLabel.text = ""
myLabel.isHidden = true

字符串

相关问题