Android动画效果生动有趣的通知NiftyNotification(Android Toast替代品)

51 篇文章 0 订阅

自定义的 Toast 提示信息框,需要用到第三方开源框架 NiftyNotification 。

NiftyNotification在github上的项目主页是:https://github.com/sd6352051/NiftyNotification

NiftyNotification本身又依赖于另外一个github上的第三方开源项目NineOldAndroids,NineOldAndroids在github上的项目主页是:https://github.com/JakeWharton/NineOldAndroids   

导入方法:

1. 先导入 NineOldAndroids 目录下的library,作为 library;

2. 再倒入 NiftyNotification 目录下 library 中 src,作为 library;

3. 最后导入 NiftyNotification  目录中的 app 中的 main 文件夹。直接运行示意如下:



NiftyNotification  中的 MainActivity.java :

[java]  view plain copy
  1. package com.gitonway.lee.niftynotification;  
  2.   
  3. import android.app.Activity;  
  4. import android.os.Bundle;  
  5. import android.view.Gravity;  
  6. import android.view.View;  
  7. import android.widget.Toast;  
  8.   
  9. import com.gitonway.lee.niftynotification.lib.Configuration;  
  10. import com.gitonway.lee.niftynotification.lib.Effects;  
  11. import com.gitonway.lee.niftynotification.lib.NiftyNotificationView;  
  12.   
  13. public class MainActivity extends Activity {  
  14.     private Effects effect;  
  15.   
  16.     @Override  
  17.     protected void onCreate(Bundle savedInstanceState) {  
  18.         super.onCreate(savedInstanceState);  
  19.         setContentView(R.layout.activity_main);  
  20.     }  
  21.   
  22.     public void showNotify(View v){  
  23.   
  24.         String msg="Today we鈥檇 like to share a couple of simple styles and effects for android notifications.";  
  25.   
  26.         switch (v.getId()){  
  27.             case R.id.scale:effect=Effects.scale;break;  
  28.             case R.id.thumbSlider:effect=Effects.thumbSlider;break;  
  29.             case R.id.jelly:effect=Effects.jelly;break;  
  30.             case R.id.slidein:effect=Effects.slideIn;break;  
  31.             case R.id.flip:effect=Effects.flip;break;  
  32.             case R.id.slideOnTop:effect=Effects.slideOnTop;break;  
  33.             case R.id.standard:effect=Effects.standard;break;  
  34.         }  
  35.   
  36.   
  37.   
  38.   
  39.         NiftyNotificationView.build(this,msg, effect,R.id.mLyout)  
  40.                 .setIcon(R.drawable.lion)         //You must call this method if you use ThumbSlider effect  
  41.                 .show();  
  42.   
  43.   
  44.   
  45. //        You can configure like this  
  46. //        The default  
  47.   
  48. //        Configuration cfg=new Configuration.Builder()  
  49. //                .setAnimDuration(700)  
  50. //                .setDispalyDuration(1500)  
  51. //                .setBackgroundColor("#FFBDC3C7")  
  52. //                .setTextColor("#FF444444")  
  53. //                .setIconBackgroundColor("#FFFFFFFF")  
  54. //                .setTextPadding(5)                      //dp  
  55. //                .setViewHeight(48)                      //dp  
  56. //                .setTextLines(2)                        //You had better use setViewHeight and setTextLines together  
  57. //                .setTextGravity(Gravity.CENTER)         //only text def  Gravity.CENTER,contain icon Gravity.CENTER_VERTICAL  
  58. //                .build();  
  59. //  
  60. //        NiftyNotificationView.build(this,msg, effect,R.id.mLyout,cfg)  
  61. //                .setIcon(R.drawable.lion)               //remove this line ,only text  
  62. //                .setOnClickListener(new View.OnClickListener() {  
  63. //                    @Override  
  64. //                    public void onClick(View view) {  
  65. //                        //add your code  
  66. //                    }  
  67. //                })  
  68. //                .show();                               //  show(boolean) allow duplicates   or showSticky() sticky notification,you can call removeSticky() method close it  
  69.     }  
  70.   
  71. }  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值