我希望像在某些游戏菜单屏幕中一样被选择时, UILabel 会略微膨胀。为了获得平滑的大小调整,我想我应该在动画块中对标签的属性进行一些更改。

显而易见的尝试是更改 label.font.pointSize 属性,但这是只读的。

使用缩放标签的.transform属性CGAffineTransformationMakeScale()使文本模糊。

还有其他方法吗?

最佳答案

将UILabel上的字体设置为放大时所需的大小。然后按比例缩小。当您希望标签膨胀时,将其缩放回原始尺寸。

    messageLabel.font = [UIFont boldSystemFontOfSize:45];
    messageLabel.transform = CGAffineTransformScale(messageLabel.transform, 0.25, 0.25);
    [self.view addSubview:messageLabel];
    [UIView animateWithDuration:1.0 animations:^{
        messageLabel.transform = CGAffineTransformScale(messageLabel.transform, 4, 4);
    }];

关于iphone-sdk-3.0 - 是否可以在iPhone上通过流畅的动画来更改UILabel的字体大小?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2098893/

10-13 08:31