2014-09-18 8 views
10

Есть ли у кого-нибудь еще проблемы с UIDatePickers в popovers на iOS 8? Внезапно наши сборщики дат не отображаются правильно (см. Скриншот). Похоже, что часть сборщика не отображается (хотя вы можете по-прежнему взаимодействовать с отсутствующей частью, чтобы изменить время).Проблемы с UIDatePicker в popovers на iOS 8

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

Кто-нибудь нашел исправление или обходное решение для этих проблем?

UIDatePicker issues in popovers on iOS 8

+0

это также не только для popovers, но и для tableview. –

ответ

20

Я нашел решение в форумах разработчиков Apple (моя резервная копия базы знаний, когда переполнение стека не может меня). Нацу

Пользователь имел следующее решение:

У меня есть та же проблема в моем проекте. И это приводит только к устройствам iPad (у iPhone нет проблем с тем же кодом). Как я понимаю, UIDatePicker содержит UITableView и UITableViewCell для отображения содержимого подборщика , а его цвет фона по умолчанию установлен на белый. Это является причиной этой проблемы. IOS 7 имеет UITableViewCell с белым фона в UIDatePicker IOS 8 имеет UITableView с белым фоном в UIDatePicker Так что мое решение является то, что я поставил эти цвета фона к нулю с помощью UIAppearance так:

[[UITableView appearanceWhenContainedIn:[UIDatePicker class], nil] setBackgroundColor:nil]; // for iOS 8 
[[UITableViewCell appearanceWhenContainedIn:[UIDatePicker class], [UITableView class], nil] setBackgroundColor:[UIColor colorWithWhite:0.0 alpha:0.0]]; // for iOS 7 

Значения, которые я установил, - это цвет, используемый на iPhone. Я не уверен, что это правильный способ исправить проблему . Но, по крайней мере, в моей среде это работает хорошо. У меня нет , если проблема UIPickerView возникает по той же причине. Но проверка иерархии может помочь вам.

Поскольку это использует UIAppearance, вы можете поместить его практически в любом месте. Я положил его в awakeFromNib в свой класс ячеек таблицы, и он работал как шарм. Спасибо Нацу!

+0

удивительный. работает как очарование! спасибо, доведя это до SO :) –

+0

Спасибо, что это сработало для меня ...... :) – Leena

+0

Работал для меня тоже - спасибо! – Luke

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