zoukankan      html  css  js  c++  java
  • 仿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动态图。(点击下载

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

  • 相关阅读:
    【产品】Pony三问
    【数据平台】阿里dataphin
    【数据中台】阿里数据中台架构
    关于 Qt 5,你所需要了解的基础知识
    Skynet 游戏服务器开发实战
    关于自然语言处理,有一本通关手册待接收
    ROS 机器人操作系统进阶实战
    面试官不讲武德,问我如何实现分布式缓存?
    高 star 开源项目来实验楼啦,深度学习强推教材
    Spring Boot 2.4.0 全新发布,还不快来实战
  • 原文地址:https://www.cnblogs.com/Jett/p/5909965.html
Copyright © 2011-2022 走看看