Pull to refresh

Comments 28

При написании статьи ни одна бутылка не пострадала.

Меня интересует интересно ли вообще кому либо это направление, или же оно того не стоит.

Мне кажется, что разработка под Android сейчас очень перспективное направление.
Тоже выскажусь о том, что направление интересно. Хотя это видно и по количеству плюсов. Было бы неинетересно, минусовали бы по-любас.

Перспективное оно, или нет — это не важно. Оно востребованное. Как минимум для себя программки пописать могут захотеть многие. А значит тема жива и писать нужно.
Разработка — да, согласен. А вот статьи для начинающих как мне кажется актуальность успели растерять (судя по тому что эта статья в своё время инвайт не получила). С другой стороны в песочницу заглядывают далеко не все, а потому мне интересно как на неё отреагируют сейчас.
Я не знаю как кому, но мне нравится читать подобные статьи.
Написано все коротко, ясно и по делу.
Пишите по больше таких статей, и у Вас будет много читателей.
Думаю неплохим индикатором будет служить количество закладок на эту статью :)
Спасибо за статью, очень надеюсь на продолжение цикла, тем более в таком стиле.
Не знаю, как другим, но мне интересно (неделю назад приехал Desire HD), поэтому спасибо!
Ну тогда рад что хоть время не пропало :). В иной раз попробую взять тему по серьёзней.
А можно как-нибудь скрыть статусбар? А то в Sense она слишком широкая, и очень с ней некрасиво все смотрится…
В сторонних лончерах можно настроить скрытый статусбар, или повесить скрытие, например, на свайп по иконке быстрого доступа внизу экрана. Даже на Desire я перешёл на LauncherPro, шустрее намного. Однако, пришлось отказаться от Сенсовых виджетов, но аналоги найти не проблема.
Если вы хотите сделать свое приложение полноэкранным (что бы статусбар был невиден),
то решение вот:
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // No Title bar
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        ...
    }

Если вы конечно именно это имели ввиду
либо через AndroidManifest, но это для собственного приложения. Я же понял, спрашивают про лончер, или нет? Наличие статус-бара в приложениях является нормой, в нём заключается привычный юзер-экспириенс (наличие часов и иконок состояния, из него вытягивается обсуждаемая строка уведомлений и пр.), ограничение пользователя без необходимой на то причины считается дурным тоном.
UFO just landed and posted this here
Для полноты описания нехватает только пары нужных в хозяйстве фишек:
1) Контроль за нажатием на нотификейшен
В статье не пояснил, что это связь «клика» по нотификейшену и запуска активити(можно любой активити привязывать):
PendingIntent contentIntent = PendingIntent.getActivity(this, 0, new Intent(this, MyActivity.class), 0);
...
notification.setLatestEventInfo(this, getText(R.string.app_name), message, contentIntent);

Пример простого скрытия нотификейшена если по нему «кликнуть»:
PendingIntent contentIntent = PendingIntent.getActivity(this, 0, new Intent(), 0);
notification.flags |= Notification.FLAG_AUTO_CANCEL;
...
notification.setLatestEventInfo(this, getText(R.string.app_name), message, contentIntent);


2) Ручное убирание/блокировка убирания по «Clear events»
Блокируем скрытие:
notification.flags |= Notification.FLAG_ONGOING_EVENT;//do not hide notification after press "Clear events"

Скрываем вручную (например в onDestroy()):
mNM.cancel(NOTIFY_ID); //(mNM - NotificationManager)  Remove notification from tray by id
Да, одна из фишек нотификейшенов – быстрый переход к приложению, их вызвавшему. Странно, что в статье это упустили.

А ещё очень сильно интересует создание постоянных уведомлений, которые располагаются в разделе «Текущие» и не исчезают при нажатии «Очистить». Точнее, не столь создание, сколько привязка и управление. Это просьба автору, как вариант следующей статьи, или для обсуждения в комментариях.
Спасибо за дополнение, вы безусловно правы. Более того — объяснение первого пункта планировалось, но когда дошел до строки задумался как бы об этом рассказать не вдаваясь в глубокие подробности. Пытался описать красиво, но т.к. до мастера слога мне далеко, и уже поздно было — отложил на следующий день, а после успешно об этом забыл, и без задней мысли дописав вывод отправил как есть. Спасибо за исправление моих ошибок.
Оставил UPD к статье с ссылками на поправки в комментариях, ещё раз спасибо.
Ваше расширенное уведомление будет нечитабельно на устройствах HTC и может быть других — будет черный текст на черном фоне. Некоторые популярные программы на этот счет имеют 2 цветовые схемы (нормальная и «инвертированая»). Я бы предпочел, что бы статьи для новичков рассказывали в первую очередь о подводных камнях, а не только пересказ примеров.
К сожалению не разу не держал HTC в руках, а потому сам о таком подводном камне не знал :). Спасибо за поправку.
Если не использовать свой layout, то система сама позаботится о цветах.
Мое замечание относиться только к расширенному уведомлению, а его смысл и есть в кастомном layout.
Раскопал в исходниках системные стили, можно указывать их или отдельно цвета из них:
<style name="TextAppearance.StatusBar">
    <item name="android:textSize">14sp</item>
    <item name="android:textStyle">normal</item>
    <item name="android:textColor">?android:attr/textColorPrimary</item>
</style>
<style name="TextAppearance.StatusBar.Ticker">
</style>
<style name="TextAppearance.StatusBar.Title">
    <item name="android:textStyle">bold</item>
</style>

<style name="TextAppearance.StatusBar.Icon">
    <item name="android:textStyle">bold</item>
</style>
<style name="TextAppearance.StatusBar.EventContent">
    <item name="android:textColor">#ff6b6b6b</item>
</style>
<style name="TextAppearance.StatusBar.EventContent.Title">
    <item name="android:textSize">16sp</item>
    <item name="android:textStyle">bold</item>
    <item name="android:textColor">?android:attr/textColorPrimaryInverse</item>
</style>
Спасибо за статью! Для старта — то что нужно: просто и доходчиво.
баааальшое спасибо!
продолжайте писать, интересно читать и учиться
а кто-то может на пальцах объяснить про канвас и анимацию (в частности интересует работа с таймером).
Sign up to leave a comment.

Articles