Я только начал изучать разработку для iOS, не могу найти, как сделать простую округлую кнопку. Нахожу ресурсы по старым версиям. Мне нужно установить собственный фон для кнопки? В Android я бы просто использовал патч 9, но я знаю, что iOS не имеет такой возможности.
ios
xcode
uibutton
storyboard
Гинтас_
источник
источник
Вы можете сделать простую кнопку с закругленными углами без необходимости в дополнительном фоновом изображении или написании кода для него. Просто следуйте приведенному ниже снимку экрана, чтобы установить атрибуты времени выполнения для кнопки, чтобы получить желаемый результат.
Он не будет отображаться в,
Storyboard
но он будет работать нормально при запуске проекта.Примечание.
« Путь к клавишам»
layer.cornerRadius
и значение равно 5. Это значение необходимо изменить в соответствии с высотой и шириной кнопки. Формула для этого - высота кнопки * 0,50. Поэтому поиграйте со значением, чтобы увидеть ожидаемую округленную кнопку в симуляторе или на физическом устройстве. Эта процедура будет выглядеть утомительной, если у вас есть более одной кнопки для округления в раскадровке.источник
clipsToBounds
чтобы это работало.Вы можете сделать что-то вроде этого:
Установите class в
MyButton
in,Identity Inspector
а в IB у вас будетrounded
свойство:источник
layer.masksToBounds = true
такжеВставьте код в класс RoundButton.
Обратитесь к изображению.
источник
Я нашел самый простой способ сделать это - установить угол радиуса равным половине высоты представления.
источник
Вы можете подключить свою
IBOutlet
кнопку из раскадровки.Затем вы можете установить
corner radius
кнопку так, чтобы угол был закругленным.например, ваш
outlet
являетсяmyButton
то,Obj - C
Swift
Если вы хотите кнопку точной круглой , то ваша кнопка это
width
иheight
должно быть ,equal
иcornerRadius
должна быть равна высоте или ширине / 2 (половина ширины или высоты).источник
Поскольку другой ответ предлагал выполнить большую часть этой работы в коде, только один ответ фактически предоставил способ просмотра ваших изменений в интерфейсе раскадровки IB. Мой ответ выходит за рамки этого ответа, позволяя вам изменять угол радиуса представления, кнопки, изображения и т. Д.
Обратите внимание на следующий код. Чтобы использовать этот код, создайте новый быстрый файл с именем RoundedView или как бы то ни было, затем перейдите в раскадровку и измените класс на «RoundedView», «RoundedImageView» или «RoundedButton».
источник
При добавлении
layer.cornerRadius
раскадровки убедитесь, что у вас нет начальных и конечных пробелов. Если вы сделаете копипаст, вы можете вставить пробелы. Было бы неплохо, если бы XCode сообщал какое-то предупреждение или ошибку.источник
Попробуй это!!
источник
Расширение - лучший вариант решения этой проблемы. Создайте расширение View или Button
Назовите это из кода
источник
Я использую Xcode версии 11.4
В инспекторе атрибутов вы можете определить радиус угла.
Он не будет отображаться в раскадровке, но он будет работать нормально при запуске проекта.
источник
источник