iOS: Как создать кнопку закрытия, которая находится на краю UIView с закругленными углами (с помощью IB)? - PullRequest
2 голосов
/ 12 октября 2011

Фон:

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

Кнопка пополам внутри и наполовину за пределами вида .... Посмотрите на приложения Kayak или Zynga Poker, чтобы понять, о чем я говорю.

Вопрос: Если я создамсмотреть программно и добавить кнопку, все работает.

Однако я действительно хочу использовать перо для создания представления, чтобы я мог правильно оформить представление.Поэтому, когда я вызываю self.layer.maskToBounds = YES для вида (чтобы создать закругленные углы с радиусом 25), он обрезает мою кнопку (так как ее половина вдвое и наполовину меньше).Как сохранить кнопку, чтобы она не была обрезана, и при этом все еще имел закругленные углы?

Ответы [ 2 ]

1 голос
/ 12 октября 2011

Похоже, вы используете вид и кнопку. Что вы можете попробовать, так это использовать третий контейнерный вид (с чистым фоном), в который вы помещаете исходный вид и кнопку. Кнопка должна быть сверху экрана, так сказать, чтобы она не была скрыта вашим видом. Но это должно позволить вам иметь правильно закругленные углы на вашем виде (а не на контейнере) и иметь вашу кнопку полностью видимой.

1 голос
/ 12 октября 2011

Некоторые параметры, такие как maskToBounds, cornerRadius, недоступны в IB. Вы можете создать полное представление, используя NIB, за исключением того, что у него не будет закругленных углов в IB, а в viewDidLoad вы устанавливаете только те свойства, которые нельзя установить в IB.

...