我想改变标签的宽度,因为我的swift代码很快。 如果可能的话,请在annimation程序中进行更改。可能吗 ? 当我这样做时:
self.lblChoice1.frame.size.width += 50
我的交换标签宽度不是......为什么? 提前谢谢。
编辑: 第一个回复不起作用。
print(self.lblChoice1.frame.size.width)
self.lblChoice1.frame.size.width += 150
self.lblChoice1.contentMode = UIViewContentMode.Redraw
self.lblChoice1.setNeedsDisplay()
print(self.lblChoice1.frame.size.width)
这段代码在我的控制台中很好地显示了我:
150.0
300.0
但我的标签大小不会改变显示...
答案 0 :(得分:0)
您正在更改框架,但您不会告诉视图它需要重绘自己。更改框架后,您应该调用
axisX:{intervalType: "month", interval:1}
虽然您可能需要将标签的内容模式更改为self.lblchoice1.setNeedsDisplay()
,以确保重绘。
虽然使用UIView块动画方法来做这件事会更好。
答案 1 :(得分:0)
我不认为你可以直接编辑UILabel的框架。你应该改变整个框架。
var lblChoice1Frame = self.lblChoice1.frame
lblChoice1Frame.size.width += 150
UIView.animateWithDuration(0.3) { () -> Void in
self.lblChoice1.frame = lblChoice1Frame
}