woff 發表於 2016-7-13 08:56:28

Android關於Notification.Builder的使用

在android3.0之後,Android的通知與之前的版本有所區別。
為了更好的使用,androidSDK引入了Android.app.Notificition.Builder這個類。這樣就與之前使用發生了變化。
那就說一下在Android3.0之後Notificaition的使用import android.annotation.SuppressLint;
import android.app.Activity;import android.app.Notification;
import android.app.Notification.Builder;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Intent; import android.content.res.Resources;
import android.graphics.BitmapFactory;
import android.os.Bundle; import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
@SuppressLint("NewApi")
public class MainActivity extends Activity
{
         private Button but1= null;
         private NotificationManager nm =null;
         private PendingIntent contentIntent = null;
       @Override
      public void onCreate(Bundle savedInstanceState)
      {
                super.onCreate(savedInstanceState);
                setContentView(R.layout.activity_main);
                init();
             }
       public void init(){
         but1 =(Button)super.findViewById(R.id.but1);
         but1.setOnClickListener(onclick);
         nm = (NotificationManager)this.getSystemService(NOTIFICATION_SERVICE);
         Intent notificationIntent = new Intent(this,MainActivity.class);
          contentIntent = PendingIntent.getActivity(MainActivity.this, 0, notificationIntent, 0);
       }
          OnClickListener onclick = new OnClickListener(){
            private final int NOTIFICATION_BASE_NUMBER=110;
            private Builder builder = null;
            private Notification n = null;
            public void onClick(View arg0) {
            switch(arg0.getId()){
            case R.id.but1: NotificationManager nm = (NotificationManager) MainActivity.this                             .getSystemService(NOTIFICATION_SERVICE);
            Resources res = MainActivity.this.getResources();
        builder = new Notification.Builder(MainActivity.this);
        builder.setContentIntent(contentIntent) .
       setSmallIcon(R.drawable.ic_launcher)//设置状态栏里面的图标(小图标)                     .setLargeIcon(BitmapFactory.decodeResource(res, R.drawable.i5))//下拉下拉列表里面的图标(大图标)        .setTicker("this is bitch!") //设置状态栏的显示的信息
         .setWhen(System.currentTimeMillis())//设置时间发生时间
         .setAutoCancel(true)//设置可以清除
                      .setContentTitle("This is ContentTitle")//设置下拉列表里的标题
                      .setContentText("this is ContentText");//设置上下文内容
                  n = builder.getNotification();//获取一个Notification
                  n.defaults =Notification.DEFAULT_SOUND;//设置为默认的声音
                  nm.notify(NOTIFICATION_BASE_NUMBER, n);//显示通知 break; }
                               }
                      };
}

Layout.xml文件我就不發出來了,就一個Button。
當按下主界面的Button後會出現會在下拉列表中出現This is ContentTitle。

頁: [1]
查看完整版本: Android關於Notification.Builder的使用