2017-02-08 5 views
-1

Я заметил, что в snapchat они округлили свои углы uiviewcontroller. Мне было интересно, как я могу воспроизвести то же самое на всех контроллерах представлений. Объявлял бы это в делегате приложения или в каждом отдельном контроллере представления. Может кто-нибудь, пожалуйста, покажите мне, как это сделать. У меня есть пример изображения ниже. Посмотрите в верхние углы контроллера вида, и вы увидите, что они округлены. Я пытаюсь воспроизвести это.Как добавить угловой радиус в uiviewcontroller

example image

+0

Вы не добавить радиус угла к * UIViewController *, необходимо добавить его в слой А UIView * в *. Это может показаться тонким, но вы не сможете полностью понять MVC, пока не узнаете об этом. – dfd

ответ

0

Во-первых, это довольно плохая идея. Я бы посоветовал вам взглянуть на HIG documentation при разработке пользовательского интерфейса.

Это означает, что для реализации чего-то подобного вы можете создать базовый класс, который наследует от UIViewController, где вы должны установить layer.cornerRadius свойства view. Затем вы можете наследовать все ваши контроллеры вида из вашего базового класса. Вы можете сделать это либо в viewDidLoad, либо в viewWillAppear в вашем базовом классе

4

Вы можете использовать расширение, то вы можете применить радиус угла для любого вида, включая вид контроллера вида. Однако я не пробовал.

extension UIView { 
    func makeCorner(withRadius radius: CGFloat) { 
     self.layer.cornerRadius = radius 
     self.layer.masksToBounds = true 
     self.layer.isOpaque = false 
    } 
} 

Использование:

myController.view.makeCorner(withRadius: 10.0) 
+0

'func roundCorners (с радиусом: CGFloat) {...}' – raidfive

+0

Как я могу добавить это – Rosalind

+0

Что бы внутри этой функции – Rosalind

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

  • Нет связанных вопросов^_^