Странное поведение UITableViewController в моделях с надрезом iOS12, когда языковая настройка iPhone - японская или китайская
Эта проблема возникает в зависимости от языковой настройки iPhone.
Мне удалось подтвердить эту проблему на японском и китайском языках.
На английском и т. Д. Эта проблема не возникает.
Я создал простой проект, который устанавливает UINavigationController на раскадровку, используя Xcode10. rootViewController является UITableViewController по умолчанию.
Я почти ничего не изменил на раскадровке.
Я использую массив строк от 1 до 5 в качестве источника данных UITableView.
Если я соберу и поверну это на iOS12, UITableView будет смещенным верхом или будет находиться под навигационной панелью.
Эта проблема не возникает в iOS11. Также никаких проблем не возникнет у моделей без надреза.
Эта проблема возникает только с надрезанными моделями iOS12. (iPhone X, XS, XS Max, Xr)
Кто-нибудь знает причину этой странной проблемы?
Спасибо.
Я загрузил свой проект на GitHub. Не могли бы вы подтвердить это?
2 ответа
Я думаю, что вы нашли ошибку! (Как вы правильно объяснили, это происходит только на устройстве X, только в iOS 12 и только в китайской или японской среде.)
Вот обходной путь - не очень удовлетворительный, но по крайней мере это обходной путь:
override func viewDidLoad() {
super.viewDidLoad()
self.edgesForExtendedLayout = []
}
Я сообщил об этой ошибке в Apple. Apple ответила, что это должно быть исправлено на iOS 12.1.
Я установил Xcode 10.1 beta 2 и подтвердил эту ошибку на симуляторе iOS 12.1.
Я подтвердил, что эта ошибка была исправлена на iOS 12.1 (симулятор).
Спасибо.