добавить значок приложения в правую часть строки состояния

Можно ли добавить значок моего приложения в правую часть строки состояния (рядом со значком Wi-Fi, значком Bluetooth и т. д.)? Мое приложение запускает службу в фоновом режиме, поэтому я хочу показывать значок своего приложения, когда служба активна.

Спасибо

Алессандро


person AleCat83    schedule 10.10.2015    source источник
comment
прочитайте это: stackoverflow.com/questions/3973208/   -  person Michele Lacorte    schedule 10.10.2015


Ответы (2)


Для каждого есть разные API. Увидеть ниже:

Notification.Builder nb = new Notification.Builder(context)
.setContentTitle("title")
.setContentText("content")
.setAutoCancel(true)
.setLargeIcon(largeIcon)
.setSmallIcon(R.drawable.small_icon)
.setTicker(s.getText());

см. здесь и здесь

OR

В качестве альтернативы вы можете использовать собственный макет уведомлений.

person Milad gh    schedule 10.10.2015

Вы можете отобразить значок приложения справа от ActionBar (или Toolbar), используя это:

ActionBar actionBar = getSupportActionBar();
// or Toolbar toolbar = getSupportActionBar();

actionBar.setDisplayOptions(actionBar.getDisplayOptions()
        | ActionBar.DISPLAY_SHOW_CUSTOM);
ImageView imageView = new ImageView(actionBar.getThemedContext());
imageView.setScaleType(ImageView.ScaleType.CENTER);
imageView.setImageResource(R.drawable.your_image);
ActionBar.LayoutParams layoutParams = new ActionBar.LayoutParams(
        ActionBar.LayoutParams.WRAP_CONTENT,
        ActionBar.LayoutParams.WRAP_CONTENT, Gravity.RIGHT
                | Gravity.CENTER_VERTICAL);
imageView.setLayoutParams(layoutParams);
actionBar.setCustomView(imageView);

Для строки состояния вам нужно будет создать собственный код структуры макета/переопределения, отметьте это и это ответы.

person Ivan V    schedule 10.10.2015