Подтвердить что ты не робот

Просмотреть (не) на Android желе Bean

В настоящее время я разрабатываю приложение, с помощью которого можно получать и просматривать расписание. Чтобы отобразить расписание, я использовал исходные файлы java файлов TimeRulerView (и BlocksLayout и BlockView) из приложения Google IO 2011, потому что мне нравился внешний вид. Исходный код можно найти здесь: https://github.com/underhilllabs/iosched2011. (Google заменил там один код IO2012).

Так как моя Galaxy Nexus обновила tot Jelly Bean (4.1.1) вчера, TimeRulerView (и/или один из других) больше не отображается.

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

Я протестировал оригинальное приложение IO2011 на своем JB GN, но там ничего не видно, поэтому проблема заключается в одном (одном) представлении или способе, которым JellyBean предоставляет представление (возможно, маслом проекта?).

См. здесь (https://dl.dropbox.com/u/7102660/TimeRulerView_JellyBean_problem.zip) для скриншотов на ICS (приложение работает), JB (приложение не работает) и приложение GoogleIO2011.

4b9b3361

Ответ 1

Благодаря ответу Криса я играл с настройками аппаратного ускорения. Я также использую код iosched2011 и должен был удалить строку android:layerType="software" из моего BlocksLayout View внутри файла block_content.xml.

Ответ 2

Может ли это быть связано с аппаратное ускорение? Недавно я столкнулся с проблемой на пару телефонов с ICS, но не все телефоны/устройства были затронуты. Добавление тега hardwareAccelerated в мой манифест также не устранило проблему, и я должен был определить ее на определенных представлениях, которые я не хотел бы ускорить. Мое решение использовало android:layerType = "программное обеспечение" в моих макетах xml и setLayerType (LAYER_TYPE_SOFTWARE, null) в Java-коде.

РЕДАКТИРОВАТЬ: более того, это не исправить мою проблему, используя setLayerType на желе Bean. Установка типа слоя на программное обеспечение на ICS устранила мою проблему. Единственный способ, с помощью которого можно было показать представления, - установить для всего приложения или конкретного действия значение android:hardwareAccelerated="false".