【问题标题】:UIButton border paddingUIButton 边框填充
【发布时间】:2015-12-28 21:34:55
【问题描述】:

这看起来是一个很简单的问题,但我似乎无法在网上找到解决方案。我使用UIButton 的图层为其制作边框。和边界显示。问题是边框的paddings(top/right/bottom/left,显然这个术语来自CSS世界)太小了,我想增加它们。我该怎么做?

这是我的代码:

myButton.layer.cornerRadius = 10;
myButton.layer.borderWidth = 2;
myButton.layer.masksToBounds = YES;

按钮看起来像上面一样。

【问题讨论】:

  • @lgc_ustc:能否为问题按钮添加屏幕截图
  • 尝试增加边框宽度?
  • 是的,尝试增加边框宽度。它只是增加了宽度而不是填充(按钮内容和按钮边框之间的空间)。

标签: objective-c uikit


【解决方案1】:

尝试更改contentEdgeInsets。这些是围绕所有按钮内容的矩形的最外边距。

例如:myButton.contentEdgeInsets = UIEdgeInsetsMake(5,5,5,5);

【讨论】:

    【解决方案2】:

    使用UIButtontitleEdgeInsets属性

            myButton.titleEdgeInsets = UIEdgeInsets(5, 5, 5, 5);
    

    根据需要调整插图!您可以从Apple Docs获取更多关于titleEdgeInsets的详细信息

    【讨论】:

    • 没有。试过了,在视觉上似乎没有任何改变。
    • UIEdgeInsetsMake 是 Asif 所说的方法(我赞成)。但是,根据您的字体,您可能需要使插图更大,如果我发现您的字体大小为 15,则为 17。您可以在属性检查器中使用带有 IB 的 edgeInsets 进行操作。您会看到 UIButton 文本周围有一个虚线框,当您使用 4 个插图时,该框会围绕您的文本移动。
    【解决方案3】:

    您可以减小按钮字体大小,例如,

    myButton.titleLabel.font = [UIFont systemFontOfSize:14.0];
    

    或者只是更改故事板中按钮的框架大小或以编程方式

    【讨论】:

    • 你试过你的解决方案了吗?它对我不起作用。当您减小字体大小时,边框也会缩小。
    • 嗯,您是否对代码的其他部分进行了更改?因为我不能让你的代码工作(当我减小字体大小时,边框也缩小了)。
    【解决方案4】:

    在 iOS 15 中,如果你使用 UIButtonConfiguration,它将是:

    button.configuration.contentInset = UIEdgeInsets(top: 2, left: 4, bottom: 2, right: 4)
    

    对于旧版本:

    button.contentEdgeInsets = UIEdgeInsets(top: 2, left: 4, bottom: 2, right: 4)
    

    【讨论】:

      猜你喜欢
      • 2011-07-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-03
      • 1970-01-01
      • 1970-01-01
      • 2022-01-25
      • 2018-06-25
      相关资源
      最近更新 更多