0

问题是当我使用像 Helvetica Oblique 这样大小大于 13 的斜体字体时,UIButton 剪辑标题尾部(最后大约 1-2 像素)。有人知道这个问题的解决方案吗?

4

4 回答 4

2

子类UIButton类和覆盖 setTitle :

- (void)setTitle:(NSString *)title forState:(UIControlState)state { [super setTitle:[NSString stringWithFormat:@" %@ ", title] forState:state]; }

这将从文本的两侧添加额外的空格。简单易行。

于 2014-01-28T23:35:11.143 回答
0

我的脚本字体有这个问题。不幸的是,没有一种简单的方法可以解决它。我尝试了一切,然后最终继承了 UIButton。您可以在此处阅读实施的详细信息:http: //blog.tinymission.com/post/subclassing-uibutton

基本上,最简单的做法是将您自己的 UILabel 放在 UIButton 之上,但对我来说,这不会很好,所以我将 UIButton 子类化。

于 2013-03-16T13:55:02.923 回答
0

您可以通过将 Uibutton 属性设置为来设置斜体字体

button.titleLabel?.font = UIFont.italicSystemFont(ofSize: 17)

于 2018-05-15T07:40:42.437 回答
0
  1. 创建一个自定义子类UIButton
  2. 覆盖方法:- (CGRect)titleRectForContentRect:(CGRect)contentRect

例子:

- (CGRect)titleRectForContentRect:(CGRect)contentRect
{
    CGFloat textX = 0;
    CGFloat textY = 0;
    CGFloat textW = self.width;
    CGFloat textH = contentRect.size.height;
    return CGRectMake(textX, textY, textW, textH);
}
于 2020-04-24T02:11:36.993 回答