2016-08-03 2 views
0

Я пытаюсь создать такую ​​кнопку в построителе интерфейса.Пользовательский UIButton в iOS с центрированным изображением поверх текста

enter image description here

Я использовал this SO question как ссылку, но я не могу получить изображение, чтобы сидеть на верхней части текста.

Я могу получить только текст и изображение с центром.

enter image description here

Вот некоторые из параметров:

enter image description here

enter image description here

+0

В инспекторе, если вы выберете «край», у нас есть возможность выбрать изображение и изменить значение края, используйте вставку «влево, вправо, сверху, снизу» –

ответ

1

Вы пытаетесь использовать как изображение и ярлык на ту же точку зрения (UIButton вид) и позиционируйте их, это не лучший способ выполнить эту задачу.

И вы не можете добавлять подклассы в UIButton в построителе интерфейса.

Я бы порекомендовал вам создать UIView вместо этого, и добавить отдельно в UIImageView с изображением настроек и UILabel с «Настройки»:

enter image description here

После этого вы можете добавить TapGesturRecognizer для информирования вы когда кран сделал на кнопке вид:

func tapSetup() { 
     let tapOnMyViewButton = UITapGestureRecognizer(target: self, action: #selector(ViewController.didTapOnMyViewButton)) 
     self.byViewBtn.addGestureRecognizer(tapOnMyViewButton) 
    } 

    func didTapOnMyViewButton() { 
     //Your logic 
    } 
0

альтернативой, что я часто использую в тех ситуациях, как это создать UIView в Interface Builder и изменить свой класс UIControl. Затем вы можете добавить столько UIImageViews, UILabels и т. Д., Как вы хотели бы & позиционировать их все с помощью AutoLayout и более «хакерских» вложений контента.

UIButton является подклассом UIControl, и все функции, которые вы, вероятно, ищете, также, вероятно, являются частью UIControl, в частности метод -addTarget: action: forControlEvents.

Смежные вопросы