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

转载来自:http://blog.youkuaiyun.com/zhangphil/article/details/50136495
Android动画效果生动有趣的通知NiftyNotification(Android Toast替代品)

Android原生的Toast功能单一,仅仅够日常开发需要,若打算实现生动有趣的消息提示通知,则可以考虑使用Android上第三方开源的项目:NiftyNotification
NiftyNotification的效果如图所示(部分):

NiftyNotification在github上的项目主页是:https://github.com/sd6352051/NiftyNotification
NiftyNotification本身又依赖于另外一个github上的第三方开源项目NineOldAndroids,NineOldAndroids在github上的项目主页是:https://github.com/JakeWharton/NineOldAndroids
正确添加NineOldAndroids引用后,即可直接使用NiftyNotification。简单期间,甚至可以直接将NiftyNotification的单个jar包下载后加入到自己的项目libs中,然后直接使用。
NiftyNotification无需配置xml文件,只需像Android原生的Toast那样写上层Java代码即可,NiftyNotification的Java代码写法简单,可设置的参数丰富,可定制性强,摘录NiftyNotification项目中的部分Java代码示例:

[java] view plain copy

package com.gitonway.lee.niftynotification;  

import android.app.Activity;  
import android.os.Bundle;  
import android.view.Gravity;  
import android.view.View;  
import android.widget.Toast;  

import com.gitonway.lee.niftynotification.lib.Configuration;  
import com.gitonway.lee.niftynotification.lib.Effects;  
import com.gitonway.lee.niftynotification.lib.NiftyNotificationView;  

public class MainActivity extends Activity {  
    private Effects effect;  

    @Override  
    protected void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
        setContentView(R.layout.activity_main);  
    }  

    public void showNotify(View v) {  

        String msg = "Today we’d like to share a couple of simple styles and effects for android notifications.";  

        switch (v.getId()) {  
        case R.id.scale:  
            effect = Effects.scale;  
            break;  
        case R.id.thumbSlider:  
            effect = Effects.thumbSlider;  
            break;  
        case R.id.jelly:  
            effect = Effects.jelly;  
            break;  
        case R.id.slidein:  
            effect = Effects.slideIn;  
            break;  
        case R.id.flip:  
            effect = Effects.flip;  
            break;  
        case R.id.slideOnTop:  
            effect = Effects.slideOnTop;  
            break;  
        case R.id.standard:  
            effect = Effects.standard;  
            break;  
        }  

        NiftyNotificationView.build(this, msg, effect, R.id.mLyout).setIcon(R.drawable.lion) // You  
                                                                                                // must  
                                                                                                // call  
                                                                                                // this  
                                                                                                // method  
                                                                                                // if  
                                                                                                // you  
                                                                                                // use  
                                                                                                // ThumbSlider  
                                                                                                // effect  
                .show();  

        // You can configure like this  
        // The default  

        // Configuration cfg=new Configuration.Builder()  
        // .setAnimDuration(700)  
        // .setDispalyDuration(1500)  
        // .setBackgroundColor("#FFBDC3C7")  
        // .setTextColor("#FF444444")  
        // .setIconBackgroundColor("#FFFFFFFF")  
        // .setTextPadding(5) //dp  
        // .setViewHeight(48) //dp  
        // .setTextLines(2) //You had better use setViewHeight and setTextLines  
        // together  
        // .setTextGravity(Gravity.CENTER) //only text def  
        // Gravity.CENTER,contain icon Gravity.CENTER_VERTICAL  
        // .build();  
        //  
        // NiftyNotificationView.build(this,msg, effect,R.id.mLyout,cfg)  
        // .setIcon(R.drawable.lion) //remove this line ,only text  
        // .setOnClickListener(new View.OnClickListener() {  
        // @Override  
        // public void onClick(View view) {  
        // //add your code  
        // }  
        // })  
        // .show(); // show(boolean) allow duplicates or showSticky() sticky  
        // notification,you can call removeSticky() method close it  
    }  

}  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值