私はこのようなボタンをインターフェースビルダーで作成しようとしています。iOSのカスタムUIButtonをテキストの中央に配置した画像
私は、しかし私は、テキストの上に座って画像を得ることができない、リファレンスとしてthis SO questionを使用していました。
私は、中心にないテキストと画像しか得られません。ここで
設定の一部されています
私はこのようなボタンをインターフェースビルダーで作成しようとしています。iOSのカスタムUIButtonをテキストの中央に配置した画像
私は、しかし私は、テキストの上に座って画像を得ることができない、リファレンスとしてthis SO questionを使用していました。
私は、中心にないテキストと画像しか得られません。ここで
設定の一部されています
あなたは、同じビュー(UIButtonビュー)上の画像とラベルの両方を使用しようとしているとこれらのタスクを実行する最善の方法ではありません。
また、インターフェイスビルダーのUIButtonにサブクラスを追加することはできません。
私の代わりにUIViewのを作成することをお勧めいたしますと、「設定」で別々の設定イメージとUIImageView、およびUILabelを追加します。その後
あなたが知らせるTapGesturRecognizerを追加することができますあなたは、タップは、あなたのビューボタンになったとき:
func tapSetup() {
let tapOnMyViewButton = UITapGestureRecognizer(target: self, action: #selector(ViewController.didTapOnMyViewButton))
self.byViewBtn.addGestureRecognizer(tapOnMyViewButton)
}
func didTapOnMyViewButton() {
//Your logic
}
これは、Interface BuilderでのUIViewを作成し、Uicontrolのにそのクラスを変更することがあるように私は頻繁に状況で使う代替。 &は、AutoLayoutとより多くの「ハッピー」な内容のインセットを配置したいと思うので、UIImageViews、UILabelsなどをいくつでも追加することができます。
UIButtonはUIControlのサブクラスであり、おそらくあなたが探しているすべての機能がUIControlの一部である可能性があります。具体的には、-addTarget:action:forControlEventsメソッドです。
「エッジ」を選択した場合、画像を選択してエッジ値を変更するオプションがあります。「左、右、上、下」インセット –