2016-11-28 2 views
1

Когда я создаю расширение в Xcode и необходимо вызвать:Где назвать segmentedControl.removeBorders() из?

segmentedControl.removeBorders()

Где я должен позвонить, что с ?. В viewDidLoad для файла Swift контроллера вида? как переопределить func в файле Swift диспетчера вида ?. Вставка что после viewDidLoad дает мне «метод„segmentedControl“был использован в качестве свойства, добавить(), чтобы вызвать его» ошибки и когда я добавить скобки это дает мне

«Значение типа кортежа«() 'не имеет ошибки' removeBorders 'участника.

Это проблема с наименованием? Я назвал .swift для удаления границ/разделителей «UISegmentedControl + removeborders.swift». Я полный n00b, если это помогает объяснить, почему я застрял на этом. Любая помощь будет принята с благодарностью! Благодаря!

Ссылка: 3-й ответ перечислены на этот вопрос относительно удаления границ/делители от UISegmentedControl: Remove UISegmentedControl separators completely. (iphone)

ответ

0

В моем текущем проекте, я подклассы, поэтому вызов сделан в инициализаторе:

class SegmentedControl: UISegmentedControl { 
    override init(items: [Any]?) { 
     super.init(items: items) 
     segmentedControlInit() 
    } 
    required init?(coder aDecoder: NSCoder) { 
     super.init(coder: aDecoder) 
     segmentedControlInit() 
    } 
    private func segmentedControlInit() { 
     removeBorders() 
    } 
} 

Но делать это из viewDidLoad также должно быть хорошо.

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