Comments 20
В избранное. Спасибо
Не нужно выделяться из общей массы программ, пожалуйста. Интерфейс должен быть стандартным и привычным.
Хорошая статья, но именование переменных оставляет желать лучшего.
Контекст доступен через getContext();, но если уж хранить его отдельно, тогда context.getApplicationContext();
А еще, по моему мнению, сигнал о завершении скрытия ленты лучше посылать через обычный листенер, ну или хэндлер. В данном примере такое событие слишком мелкое, чтобы сообщать о нем всем. Ну а если уж действительно нужно сообщение — то его можно отправить из листенера. Лишний код и лишняя архетектура, но зато можно переюзать и красиво:)
Идея неплоха.
Уход от GUI Guidelines и создание своих контролов — спорно, но приемлемо.
Страшненькое именование, паблик переменные, использование классовых Float — плохо, но на общую суть не влияет.
Хендлер и меседжи вместо runOnUiThread — велосипед, незнание основ.
Вечный цикл со слипами в MyTimer — говнокод.
Уход от GUI Guidelines и создание своих контролов — спорно, но приемлемо.
Страшненькое именование, паблик переменные, использование классовых Float — плохо, но на общую суть не влияет.
Хендлер и меседжи вместо runOnUiThread — велосипед, незнание основ.
Вечный цикл со слипами в MyTimer — говнокод.
Пожалуйста, не переводите Activity как «активность». Очень режит слух.
ps — в избранное
ps — в избранное
По треду на инстанс компонента ради таймера? О_О
В избранное однозначно. Буду показывать джуниорам в качестве примера как не надо программировать UI под Android в частности и на Java в целом.
если пример претендует на нечто действительно рабочее, а не «вот как можно сделать для моего девайса», то больше, чем 3- я бы не поставил. действительно много велосипедов, нет адаптации под разные экраны, переопределение onMeasure будет работать не всегда правильно. в общем, как то не очень.
Хорошо описаный пример. Спасибо. Как было замеченно, с кодистайлом недочеты есть. Но, покажу пример на своих уроках во ВШЭ.
А по сути комментариев, хочу заметить, что хватит разводить холивары на счет «гайдлайна по GUI». Хорошие качественные приложения всегда имеют наитивный интерфейс. Это основная задача дизайнеров. Наша задача, как специалистов своей области, реализовать качественный интерфейс. Возьмем для примера приложения Path, Foursquare, Facebook. В них ничего нет от гайдлайнов, пожалуй, кроме TitleBar, но это качественные приложения. Собирать приложения на стандартных котролах проще, но кастомизация развивает мышление. Да и пользователя не интерисуют гайдланы. Ему нужно чтобы «красиво и удобно и с анимацией», а разработчики упираются в гайдлайны, и это нормально, потому что мы живем этим — стандартами разработки.
Простите, накипело.
А по сути комментариев, хочу заметить, что хватит разводить холивары на счет «гайдлайна по GUI». Хорошие качественные приложения всегда имеют наитивный интерфейс. Это основная задача дизайнеров. Наша задача, как специалистов своей области, реализовать качественный интерфейс. Возьмем для примера приложения Path, Foursquare, Facebook. В них ничего нет от гайдлайнов, пожалуй, кроме TitleBar, но это качественные приложения. Собирать приложения на стандартных котролах проще, но кастомизация развивает мышление. Да и пользователя не интерисуют гайдланы. Ему нужно чтобы «красиво и удобно и с анимацией», а разработчики упираются в гайдлайны, и это нормально, потому что мы живем этим — стандартами разработки.
Простите, накипело.
Sign up to leave a comment.
Android компонент с нуля