Ios 如何将图像放在按钮的右侧,文本向左对齐

Ios 如何将图像放在按钮的右侧,文本向左对齐,ios,uibutton,xcode6,imageedgeinsets,Ios,Uibutton,Xcode6,Imageedgeinsets,我有一个带有图像和文本的ui按钮。如何将图像向右对齐,将文本向左对齐?使用以下两种方法 @IBDesignable class RightImageButton: UIButton { @IBInspectable var alignImageToRight: Bool = true override func layoutSubviews() { super.layoutSubviews() if alignImageToRight {

我有一个带有图像和文本的
ui按钮
。如何将图像向右对齐,将文本向左对齐?

使用以下两种方法

@IBDesignable class RightImageButton: UIButton {

    @IBInspectable var alignImageToRight: Bool = true

    override func layoutSubviews() {
        super.layoutSubviews()
        if alignImageToRight {
            if let imageView = self.imageView, let titleLabel = self.titleLabel {
                let imageWidth = imageView.frame.size.width
                var imageFrame: CGRect = imageView.frame;
                var labelFrame: CGRect = titleLabel.frame;
                labelFrame.origin.x = self.titleEdgeInsets.left + self.contentEdgeInsets.left
                imageFrame.origin.x = frame.width - self.imageEdgeInsets.right - self.contentEdgeInsets.right - imageWidth
                imageView.frame = imageFrame;
                titleLabel.frame = labelFrame;
            }
        }
    }

}
button.imageEdgeInsets = UIEdgeInsets(top: 0.0, left: 0, bottom: 0.0, right: 0.0)
button.titleEdgeInsets = UIEdgeInsets(top: 0.0, left: 0, bottom: 0.0, right: 0.0)
传递左右两侧的值并进行调整。
根据您的要求设置偏移量。

这里有几个很好的答案: