2015-09-22 2 views
2

Итак, в iOS 9 для iPad ландшафтный режим разбивает центр уведомлений на 2 неравные половины. Раньше мое сегодняшнее расширение прекрасно вписывалось в центр уведомлений независимо от того, был ли он ландшафтным или портативным.Как настроить сегодняшнюю ширину расширения для iOS 9 iPad Notification в ландшафтном режиме?

Кто-нибудь знает, как изменить размер/масштаб моего сегодняшнего расширения для нового центра уведомлений iOS9? Также есть ли какой-либо конкретный способ узнать, будет ли расширение widget/today с левой или правой стороны центра уведомлений? (Так как они разная ширина)

here is a screenshot displaying the 2 different sized halves.

Я заглянул, используя и autoResizeSubviews автоматического изменения. Но это, похоже, не работает.

Спасибо!

ответ

3

У меня была такая же проблема, и я решил его получить свой виджет ширину расширения с:

self.view.bounds.size.width 

Внимание, у вас есть доступ к self.view в viewDidAppear, потому что на viewDidLoad это может неверно, как указано здесь: Getting width of the Notification-Center inside Today-Extension

На самом деле, как я знаю, API не знает, находится ли ваш виджет слева или справа от центра уведомлений. Но, например, вы можете определить это, проверив соотношение (screenize/widget-size), или вы можете рассчитать свой макет в относительной манере, исходя из ширины вашего виджета, как я и рекомендую.

Только для числового примера на iPad mini 1 с iOS 9 размер экрана в ландшафте составляет 1024 * 768, ширина виджета на левой стороне - 471 балл, а с правой стороны - 328 точек.

+0

Это потрясающе. Спасибо @ Raiden996. – Changerrs

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