Почему некоторые элементы виджетов не отображаются при внедрении в iBook?
Вопрос
Я создал виджет в Dashcode.Он имеет несколько кнопок, текстовых полей и текстов.Он отлично работает при запуске из Dashcode или при установке на панель мониторинга.Когда я устанавливаю его в iBook (через iBooks Author) и запускаю на iPad, все кнопки и текст исчезают (а также несколько других незначительных визуальных изменений).Интересно, если я нажму где некоторый из кнопок есть, он вызывает событие нажатия кнопки, но другие не работают.Кроме того, когда событие нажатия кнопки обновляет значение текста, этот текст становится видимым.
Я пробовал и GlassButtons, и обычные кнопки, ни одна не появляется.Я проверил свойства кнопок, которые работают, и тех, которые не работают, и они кажутся одинаковыми (кроме идентификатора и значения).
Вот скриншот его работы на Mac:
Вот скриншот того, как он работает в iBooks на моем iPad:
Обратите внимание на цифру 8, где было обновлено значение текста.Кнопки подключения и обновления работают, когда вы нажимаете в нужном месте, но ни одна из остальных не работает.
Кстати, этот виджет подключается к веб-сервису по сети, используя RemObjects SDK для JavaScript, что действительно круто.Веб-сервис работает, если мне удастся просто отобразить кнопки.
Обновлять:Я заменил <div>
тег, который Dashcode использует для кнопки с реальным HTML-кодом <input type="button">
и это отображается в iBook.Текст по-прежнему не отображается.Это также <div>
.
Решение
Я понял.При сохранении виджета его необходимо сохранить с минимальной версией Mac OS X 10.4.0, которая считается «обратно-совместимой».По умолчанию (по крайней мере, при моей установке) было 10.4.3.Разница в том, что при сохранении обратной совместимости в него включаются библиотеки, которые визуализируют кнопки и текст.Почему для рендеринга текста нужны специальные библиотеки, я не понимаю.
Однако есть одно замечание: положение текста немного сбивается при запуске в iBooks.Я не думаю, что Apple закончила работу над iBooks Author и iBooks 2 до того, как выпустила их.