2014-09-28 3 views
0

мне было интересно ...Android-Wear: SpannableString в уведомлениях износа от телефона

Я был в состоянии создать стилизованное уведомление на моем андроиде-носимого-устройстве (с использованием spannable-строки) при реализации его на приложение, пригодное для ношения. (для этой цели я использовал класс SpannableStringBuilder).

Теперь, когда вы создаете стилизованных уведомления о приложении телефона на основе (с использованием SpannableStringBuilder), они будут отображаться на носимых-устройстве, но без специальный стайлинг ...

Есть ли способ для получения стильных уведомлений на носимом носителе с помощью только телефона-приложения?

Спасибо.

+0

гм, ну, Errrr, что? – pskink

+0

Уведомления Android-Wear имеют стандартный стиль. Вы можете добавить свой собственный стиль несколькими способами: (например, уведомления о настраиваемых макетах и ​​т. Д.). Один из способов сделать это - использовать класс SpannableStringBuilder. В прошлом я мог создавать пользовательские уведомления с помощью этого метода , но только при написании этого в пригодном для носки приложении. Всякий раз, когда вы создаете уведомление на своем ** телефоне **, оно также будет появляться на носителе износа, если они подключены/сопряжены. Мой вопрос: могу ли я создать уведомление по телефону, чтобы оно отображалось (со стилем) на часах? – DougieHauser

ответ

2

Большинство эффектов стилизации, применяемых к уведомлениям, созданным на переносном устройстве, будут отображаться как на переносных, так и на переносных устройствах.

Стилизация эффекты, которые будут показаны на носимых и портативных устройств:

  • Color (ForegroundColorSpan)
  • Подчеркивание (UnderlineSpan)
  • стиль текста (StyleSpan), включая: полужирный, курсивный, BOLD_ITALIC
  • Шрифтовая семья (TypeFaceSpan)
  • Подстрочный индекс (SubscriptSpan) и надстрочный индекс (SuperscriptSpan)

Стилизация эффекты, которые будут отображаться на портативных устройствах ТОЛЬКО:

  • размер шрифта (RelativeSizeSpan)
  • Зачеркнутый (StrikethroughSpan)
1

Укладка должна отображаться на обоих. Я сделал это, используя класс SpannableStringBuilder и NotificationCompat.

Пожалуйста, обратитесь к нашему образцу под образцами/android-20-wearable/Notifications. Взгляните внутрь NotificationPresets в модуле приложения. Он содержит закрытый статический класс StylizedTextNotificationPreset, а метод buildNotifications содержит код стилизованных уведомлений.

Одна вещь, чтобы отметить цвет. В Holo фон по умолчанию черный, тогда как на Wear фон уведомлений белый. Я нахожу, что цвет имеет тенденцию хорошо работать против одного, а не другого, или наоборот, поэтому я бы рекомендовал использовать цвет экономно и, возможно, только придерживаться оттенков серого. Надеюсь, это поможет.

Смежные вопросы