2014-02-10 2 views
2

В iOS 7.1, используя self.canDisplayBannerAds = YES для отображения iAds, кажется, подталкивает контент вверх, когда этого не должно быть.self.canDisplayBannerAds, конфликтующие с ограничениями

Here is a sample project running in the iOS 7.0.3 simulator

And here is the same project running in the iOS 7.1 simulator

Если удалить вертикальный промежуток ограничение между двумя точками зрения эта ошибка не появляется.

Является ли это просто ошибка в прошивкой или проблема с моим

Вот пример проекта, если кто-то хочет, чтобы дать ему попробовать:

https://dl.dropboxusercontent.com/u/4521046/iPhoneUITest.zip

ответ

1

У меня была такая же проблема, но в IOS 8. у меня было две кнопки, имеющие круглые углы, чтобы создать круг, используя их ширина делится на 2.

override func viewDidLayoutSubviews() { 
    super.viewDidLayoutSubviews() 
    self.instructionsButton.layer.cornerRadius = self.instructionsButton.frame.width/2 
} 

кнопки не будет полным CI до тех пор, пока iAd не покажет. Я добавил:

self.originalContentView.layoutSubviews() 

В мои viewDidLayoutSubviews:

override func viewDidLayoutSubviews() { 
    super.viewDidLayoutSubviews() 
    self.originalContentView.layoutSubviews() 
    self.instructionsButton.layer.cornerRadius = self.instructionsButton.frame.width/2 
} 

Это исправили кнопки, чтобы иметь правильные ограничения на нагрузку. Документация для canDisplayBannerAds гласит: «Влияние на то, что свойство представления контроллера представления больше не будет возвращать первоначально предоставленное представление, оно вернет новый контейнер. Для доступа к исходному представлению используйте свойство originalContentView». Вы должны помнить, что используете selfContentView для self.view.

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