Вы создаете NewsFeedTableView
, используя инициализатор без параметров. Назначенный инициализатор для UIView
является следующим:
init(frame: CGRect)
Назначенный инициализатор всегда будет вызываться во время инициализации любого класса, наследуемого от UIView
. init()
инициализатор UIView
будет вызывать его с CGRect.zero
в качестве параметра.
Теперь рассмотрим документацию init (frame: style:) инициализатор UITableView
:
Если вы инициализируете табличное представление с помощью метода init UIView (frame :), по умолчанию будет использоваться стиль UITableView.Style.plain.
Итак, в основном:
1. NewsFeedTableView()
звонки NewsFeedTableView(frame: CGRect.zero)
2. NewsFeedTableView(frame: CGRect.zero)
звонки NewsFeedTableView(frame: CGRect.zero, style: .plain)
Вот почему ваш переопределенный инициализатор вызывается