Расширение сенсорной области на iPhone X в ландшафтном режиме

Если UIViewController запустить в ландшафтном режиме, даже если home indicator не с правой стороны, все равно крайние правые 44 точки на экране не реагируют на прикосновения. Мне интересно, какова цель отключения этих пикселей для касаний и есть ли способ расширить сенсорную область справа?


person Deepak Sharma    schedule 13.11.2017    source источник
comment
Можете ли вы опубликовать любой соответствующий код? Какой вид вы используете для обнаружения касаний и каковы его ограничения?   -  person nathangitter    schedule 13.11.2017


Ответы (1)


safearealayoutguide

Когда представление отображается на экране, это руководство отражает ту часть представления, которая не покрыта панелями навигации, панелями вкладок, панелями инструментов и другими представлениями-предками. (В tvOS безопасная область отражает область, не закрытую лицевой панелью экрана.) Если представление в настоящее время не установлено в иерархии представлений или еще не отображается на экране, края направляющей макета равны краям представления.

Когда вы пытаетесь добавить объекты за пределы безопасной зоны, ваш контент может быть обрезан Device Bazels.

Пример: когда вы добавляете кнопку за пределами безопасной зоны, как

let buttonOutsideSafeArea = UIButton(frame: CGRect(x: 0, y: 100, width: 44, height: 40))
buttonOutsideSafeArea.backgroundColor = .red
self.view.addSubview(buttonOutsideSafeArea)

При повороте вправо на устройстве.

введите здесь описание изображения

Но он будет обрезан (Top Notch) при повороте влево

введите здесь описание изображения

Следовательно, старайтесь избегать добавления объектов за пределы безопасной зоны.

person Jack    schedule 15.11.2017