我正在嘗試向我的android應用程序中的圖標添加徽章。例如在Facebook應用程序(iPhone版)中,在主頁中,掛起請求的數量顯示在請求圖標上。Android:爲我的應用程序內部的圖標添加徽章
有人可以提供任何鏈接/想法如何做到這一點?
謝謝
我正在嘗試向我的android應用程序中的圖標添加徽章。例如在Facebook應用程序(iPhone版)中,在主頁中,掛起請求的數量顯示在請求圖標上。Android:爲我的應用程序內部的圖標添加徽章
有人可以提供任何鏈接/想法如何做到這一點?
謝謝
Android不支持圖標上的徽章。
相反,它提供通知系統(通知欄中的圖標等),以及創建可添加到用戶「桌面」的widgets的功能。
如果你真的想這樣做。使用FrameLayout
,其中包含一個ImageView
與您的圖標和一個TextView
以及一個可繪製的九個方塊作爲背景在右上角。如果您希望徽章稍微偏離圖標,請將邊距添加到ImageView
。
非常酷,必須安裝那一個。 – synic 2010-04-09 20:43:19
我如何使用小部件下的文本創建背景? – chrisonline 2011-05-25 14:29:40
@alexanderblom - http://alexanderblom.se/gmail-unread-count/現在不能工作..你能否提供一個新的..實際上我希望這個功能可以在TabHost – 2011-11-28 07:27:08
感謝Alexanderblom,爲hints.i使用該邏輯並設法在內部imageicon上創建徽章。這裏是xml文件。您必須在drawable上創建一個紅色圓圈。
<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>
檢查這個庫,增加了徽章的圖標/按鈕/標籤
試試這一個,是良好的索尼,三星,LG,HTC,小米,華碩,ADW,APEX和NOVA發射器。
按照以下定義附加的通知計數步驟應用程序圖標
步驟:
添加mavenCentral到您的構建腳本。
庫{mavenCentral()}
添加依賴於你的應用程序gradle這個。
依賴性{ 編譯 'me.leolin:ShortcutBadger:[email protected]' 或 編譯 'me.leolin:ShortcutBadger:[email protected]' }
添加下面的代碼在應用圖標上顯示通知計數:
int badgeCount = 1; ShortcutBadger.applyCount(context,badgeCount); // for 1.1.4 或 ShortcutBadger.with(getApplicationContext())。count(badgeCount); // for 1.1。3
如果你想刪除的徽章
ShortcutBadger.removeCount(背景); // for 1.1.4 ShortcutBadger.with(getApplicationContext())。remove(); // for 1.1.3 or ShortcutBadger.applyCount(context,0); // for 1.1.4 ShortcutBadger.with(getApplicationContext())。count(0); // for 1.1.3
2016年有什麼變化嗎?我們現在有圖書館嗎? – 2016-09-17 01:41:47
類似的問題與很好的回答:http://stackoverflow.com/questions/17565307/ – porfirion 2016-10-06 12:19:06