UIPickerView вызывая сбой в iOS4 - PullRequest
0 голосов
/ 25 ноября 2010

У меня есть простое приложение с вкладками.Построен прямо из шаблона вкладки.Когда я тестирую приложение, я замечаю, что приложение иногда падает.После точного определения правильной последовательности я обнаружил, что приложение произойдет сбой, если я сделаю следующее:

  1. Запустите приложение.Откройте представление, на котором есть UIPickerView.
  2. Откройте другое представление.
  3. Нажмите кнопку «Домой» (это отправит приложение в фоновый режим).
  4. Нажмите значок приложения еще разчтобы вывести его вперед.
  5. Коснитесь представления, в котором есть UIPickerView.
  6. Crash!

Проверка консоли показывает: - [UIPickerView setFrame:]: недопустимое значение высоты 130,0, прикрепленное к 162,0

Используемый мной UIPickerView имеет нестандартный размер.Я использую преобразование масштаба 0.8f по высоте.Так что, если вы вычислите 0,8 * 162,0, это действительно 129,9f (130, как указано в консоли).

Я понятия не имею, как это исправить.Есть идеи?

Ответы [ 2 ]

1 голос
/ 25 ноября 2010

Проблема решена. Похоже, когда приложение переходит в фоновый режим, UIPickerView необходимо снова найти ресурсы своих компонентов. Речь идет вовсе не о размере UIPickerView.

Я использовал изображения для компонентов UIPickerView, поэтому после заполнения UIPickerView этими изображениями я выпустил все изображения, которые были выделены ранее. Эти изображения не должны быть выпущены, если бы они работали в iOS4.

Отпускайте их только после завершения приложения.

0 голосов
/ 25 ноября 2010

Ваша проблема была исправлена ​​другим парнем с радикальным подходом. Посмотрите ответ от парня по имени bhavinb.

...