• 仿QQ消息气泡提醒


      https://github.com/dkmeteor/Bubble-Notification   感谢这位作者,本例子只是封装了一下源码

    这是jar下载地址 下载之后只要引用就好。下面是一个最简单的Demo,先看布局文件

    <?xml version="1.0" encoding="utf-8"?>
    <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context="lyf.com.bubblenotificationdemo.Main2Activity">
    
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_marginBottom="10dp"
            android:orientation="horizontal">
            <TextView
                android:text="推荐"
                android:layout_gravity="bottom"
                android:layout_weight="1"
                android:gravity="center"
                android:textSize="18sp"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />
            <TextView
                android:text="热播"
                android:layout_gravity="bottom"
                android:layout_weight="1"
                android:gravity="center"
                android:textSize="18sp"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />
            <TextView
                android:text="订阅"
                android:layout_gravity="bottom"
                android:layout_weight="1"
                android:gravity="center"
                android:textSize="18sp"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />
            <TextView
                android:text="消息"
                android:layout_gravity="bottom"
                android:layout_weight="1"
                android:gravity="center"
                android:textSize="18sp"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />
        </LinearLayout>
    
        <com.dk.view.drop.WaterDrop
            android:id="@+id/waterdrop"
            android:layout_gravity="bottom|end"
            android:layout_width="25dp"
            android:layout_height="25dp"
            android:layout_marginRight="20dp"
            android:layout_marginBottom="30dp"
            android:gravity="center_vertical" />
    
    </FrameLayout>
    View Code

    很简答的一个布局,看看主页面代码,也很简单

    package lyf.com.bubblenotificationdemo;
    
    import android.app.Activity;
    import android.os.Bundle;
    import android.widget.Toast;
    
    import com.dk.view.drop.CoverManager;
    import com.dk.view.drop.WaterDrop;
    
    public class Main2Activity extends Activity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main2);
    
    
            CoverManager.getInstance().init(this);
            CoverManager.getInstance().setMaxDragDistance(250);
            CoverManager.getInstance().setEffectDuration(150);
    
            WaterDrop drop = (WaterDrop) this.findViewById(R.id.waterdrop);
            drop.setText("11");
    
            drop.setEffectResource(R.drawable.bubble1);
            drop.setOnDragCompeteListener(new CoverManager.OnDragCompeteListener() {
    
                @Override
                public void onDragComplete() {
                    Toast.makeText(Main2Activity.this, "消息全部清空",Toast.LENGTH_SHORT).show();
                }
            });
    
        }
    
    }
    View Code

    其中 drop.setEffectResource(R.drawable.bubble1); 为气泡消失的gif动态图。(点击下载

    这样我们的小案例就完成了。很简单。

  • 相关阅读:
    Python基础之:数字字符串和列表
    【Flutter 实战】自定义动画-涟漪和雷达扫描
    【Flutter 实战】动画序列、共享动画、路由动画
    kubernetes备份恢复之velero
    Go语言中使用K8s API及一些常用API整理
    Go SDK 操作Docker
    Kubernetes中各组件简介(一)
    HTTPS协议原理解析
    树莓派无屏上手指南
    如何优雅的进行版本回退
  • 原文地址:https://www.cnblogs.com/Jett/p/5909965.html
Copyright © 2020-2023  润新知