bubbles-for-android

介绍:

像QQ那样可以把联系人头像添加到桌面并显示消息个数的效果。@脉脉不得语

运行效果:

使用说明:

配置项目的依赖

在build.gradle文件中添加依赖。

dependencies {
    ...
    compile 'com.txusballesteros:bubbles:1.1'
}

配置AndroidManifest

在AndroidManifest.xml 文件中添加下面的代码

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.txusballesteros.bubbles.app" >
    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
    <application ...>
        ...
        <service android:name="com.txusballesteros.bubbles.BubblesService"
            android:enabled="true"
            android:exported="false" />
    </application>
</manifest>

添加第一个Bubble

构建Bubble layout,记住,第一个view必须是BubbleLayout

<com.txusballesteros.bubbles.BubbleLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content">
    <ImageView
        android:id="@+id/avatar"
        android:layout_width="70dp"
        android:layout_height="70dp"
        android:layout_gravity="center"
        android:background="@drawable/profile_decorator"
        android:src="@drawable/profile"
        android:scaleType="centerCrop"/>
</com.txusballesteros.bubbles.BubbleLayout>

创建BubblesManager实例

private BubblesManager bubblesManager;
@Override
protected void onCreate(Bundle savedInstanceState) {
     bubblesManager = new BubblesManager.Builder(this)
                                        .build();
     bubblesManager.initialize();
    ...
}
@Override
protected void onDestroy() {
    bubblesManager.recycle();
    ...
}

把Bubble依附到窗口。

BubbleLayout bubbleView = (BubbleLayout)LayoutInflater
                                    .from(MainActivity.this).inflate(R.layout.bubble_layout, null);
bubblesManager.addBubble(bubbleView, 60, 20);

配置bubbles垃圾桶

如果你想用一个垃圾桶来去除屏幕上的bubbles,你可以配置它的布局。

定义垃圾桶的布局:

<ImageView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginBottom="20dp"
    android:src="@mipmap/bubble_trash_background"
    android:layout_gravity="bottom|center_horizontal" />

利用BubblesManager builder来配置垃圾桶布局

private BubblesManager bubblesManager;
@Override
protected void onCreate(Bundle savedInstanceState) {
     bubblesManager = new BubblesManager.Builder(this)
                                        .setTrashLayout(R.layout.bubble_trash_layout)
                                        .build();
     bubblesManager.initialize();
    ...
}
已下载
0