Android: добавьте значок к значкам внутри моего приложения - PullRequest
23 голосов
/ 09 апреля 2010

Я пытаюсь добавить значки к значкам в моем приложении для Android. например в приложении facebook (для iPhone) на домашней странице количество ожидающих запросов отображается на значке запросов.

Может ли кто-нибудь предоставить какие-либо ссылки / идеи о том, как это сделать?

Спасибо

Ответы [ 6 ]

20 голосов
/ 10 апреля 2010

Если вы действительно хотите это сделать. Используйте FrameLayout, который содержит ImageView с вашим значком и TextView с девятипатчевой графикой в ​​качестве фона в правом углу. Добавьте поля к ImageView, если хотите, чтобы значок находился немного за пределами значка.

8 голосов
/ 30 мая 2012

Спасибо, Александрблом, за hints.i использовал эту логику и сумел создать значок на внутреннем изображении. Здесь находится файл xml. Вам нужно просто создать красный круг на чертеже.

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/frameLayout1"
    android:layout_width="wrap_content"
   android:layout_height="wrap_content" >

    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/ic_launcher" />


    <TextView
        android:id="@+id/textView1"
        android:layout_width="20dip"
        android:layout_height="20dip"
        android:text="5"
        android:textColor="@color/black"
        android:textStyle="bold"
        android:padding="2sp"
        android:gravity="center"
        android:background="@drawable/circle"
        android:layout_gravity="top|right" />

</FrameLayout>

и файл circle.xml равен

<item>
    <shape android:shape="oval">
        <solid android:color="@android:color/black" />
    </shape>
</item>
<item android:top="1dp" android:left="1dp" android:right="1dp" android:bottom="1dp">
    <shape android:shape="oval">
        <solid android:color="@color/Red" />

    </shape>
</item>
7 голосов
/ 10 апреля 2010

Android не поддерживает значки на значках.

Вместо этого он предоставляет систему уведомлений (значки на панели уведомлений и т. Д.), А также возможность создавать виджеты , которые можно добавлять на «рабочий стол» пользователей.

3 голосов
/ 25 марта 2014

отметьте эту библиотеку, которая добавляет значок к иконке / кнопке / вкладке

https://github.com/jgilfelt/android-viewbadger

2 голосов
/ 30 сентября 2015

Попробуйте, это хорошо для Sony, Samsung, LG, HTC, Xiaomi, ASUS, ADW, APEX и NOVA Launcher.

https://github.com/leolin310148/ShortcutBadger

0 голосов
/ 01 июня 2016

Следуйте приведенным ниже инструкциям для добавления количества уведомлений к значку приложения

Шаги:

  1. Добавьте mavenCentral в ваш скрипт сборки.

    репозитории {mavenCentral ()}

  2. Добавить зависимости в своем приложении gradle.

    зависимости { скомпилируйте 'me.leolin: ShortcutBadger: 1.1.4@aar' или же скомпилируйте 'me.leolin: ShortcutBadger: 1.1.3@aar' }

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

    int badgeCount = 1; ShortcutBadger.applyCount (context, badgeCount); // для 1.1.4 Или же ShortcutBadger.with (getApplicationContext ()) рассчитывать (badgeCount). // для 1.1.3

  4. Если вы хотите удалить значок

    ShortcutBadger.removeCount (контекст); // для 1.1.4 ShortcutBadger.with (getApplicationContext ()). remove (); // для 1.1.3 Или же ShortcutBadger.applyCount (context, 0); // для 1.1.4 ShortcutBadger.with (getApplicationContext ()). count (0); // для 1.1.3

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...