如何在iphone中使用Button中的UIEdgeInsets属性

我是iOS应用程序开发新手,想知道如何在button中使用UIEdgeInsets属性,请指导我。

首先,你的问题不是很清楚你想要达到什么,所以…问一个普遍的问题,得到一个普遍的答案。

UIButton有三个UIEdgeInsetstypes的属性 – contentEdgeInsetstitleEdgeInsetsimageEdgeInsets 。 您可以使用这些属性为所有button内容(包括标题和图像)或单独的一个或另一个分配特定的插页。

您使用UIEdgeInsetsMake()函数创buildUIEdgeInsets值。 UIEdgeInsets分别为顶部,左侧,底部和右侧(分别)的插入值封装了四个不同的CGFloat值。 正向插入值会缩小内容区域,而负向插入值会有效增加内容区域。

如果你对如何在UIButton中使用UIEdgeInsets有一个更具体的问题,我build议你重新思考如何提出问题并重试。 🙂

编辑 (在评论中解决问题):听起来你想要做以下事情,然后:

 UIEdgeInsets titleInsets = UIEdgeInsetsMake(0.0, 7.0, 0.0, 0.0); button.titleEdgeInsets = titleInsets; 

如果你想要一个Button的扩展并简单的使用,使用这个

button.setInset(top:0.0,left:7.0,bottom:0.0,right:0.0)

 extension UIButton { /** Creates an edge inset for a button :param: top CGFLoat :param: left CGFLoat :param: bottom CGFLoat :param: right CGFLoat */ func setInset(#top: CGFloat, left: CGFloat, bottom: CGFloat, right: CGFloat) { self.titleEdgeInsets = UIEdgeInsetsMake(top, left, bottom, right) } } 

请注意,有时您不需要设置contentEdgeInsets。 只要给button一个更大的高度和宽度的限制。 标题本身将自动居中。