1. ホーム
  2. ios

[解決済み] iPhone UIButton - 画像の位置

2022-08-05 20:23:07

質問

私は UIButton にテキスト "アプリを体験してください" を、そして UIImage (>) で Interface Builder のように見える。

[ (>) Explore the app ]

しかし、私はこの UIImage をテキストの後に置く必要があります。

[ Explore the app (>) ]

を移動するにはどうしたらよいでしょうか。 UIImage を右に移動するにはどうしたらよいでしょうか?

どのように解決するには?

以下は、私なりの方法です。 (約10年後)

  1. UIButtonからのサブクラス(Swift時代なのでButton)。
  2. スタックビューに画像とラベルを貼る。
class CustomButton: Button {

    var didLayout: Bool = false // The code must be called only once

    override func layoutSubviews() {
        super.layoutSubviews()
        if !didLayout, let imageView = imageView, let titleLabel = titleLabel {
            didLayout = true
            let stack = UIStackView(arrangedSubviews: [titleLabel, imageView])
            addSubview(stack)
            stack.edgesToSuperview() // I use TinyConstraints library. You could handle the constraints directly
            stack.axis = .horizontal
        }
    }
}