TShopping

標題: Android關於Notification.Builder的使用 [打印本頁]

作者: woff    時間: 2016-7-13 08:56
標題: Android關於Notification.Builder的使用
在android3.0之後,Android的通知與之前的版本有所區別。
為了更好的使用,androidSDK引入了Android.app.Notificition.Builder這個類。這樣就與之前使用發生了變化。
那就說一下在Android3.0之後Notificaition的使用import android.annotation.SuppressLint;
  1. import android.app.Activity;import android.app.Notification;
  2. import android.app.Notification.Builder;
  3. import android.app.NotificationManager;
  4. import android.app.PendingIntent;
  5. import android.content.Intent; import android.content.res.Resources;
  6. import android.graphics.BitmapFactory;
  7. import android.os.Bundle; import android.view.View;
  8. import android.view.View.OnClickListener;
  9. import android.widget.Button;
  10. @SuppressLint("NewApi")
  11. public class MainActivity extends Activity
  12. {
  13.            private Button but1= null;
  14.            private NotificationManager nm =null;
  15.            private PendingIntent contentIntent = null;
  16.        @Override
  17.       public void onCreate(Bundle savedInstanceState)
  18.       {
  19.                 super.onCreate(savedInstanceState);
  20.                 setContentView(R.layout.activity_main);
  21.                 init();
  22.              }
  23.        public void init(){
  24.            but1 =(Button)super.findViewById(R.id.but1);
  25.            but1.setOnClickListener(onclick);
  26.            nm = (NotificationManager)this.getSystemService(NOTIFICATION_SERVICE);
  27.            Intent notificationIntent = new Intent(this,MainActivity.class);
  28.           contentIntent = PendingIntent.getActivity(MainActivity.this, 0, notificationIntent, 0);
  29.        }
  30.           OnClickListener onclick = new OnClickListener(){
  31.               private final int NOTIFICATION_BASE_NUMBER=110;
  32.               private Builder builder = null;
  33.               private Notification n = null;
  34.               public void onClick(View arg0) {
  35.             switch(arg0.getId()){
  36.             case R.id.but1: NotificationManager nm = (NotificationManager) MainActivity.this                             .getSystemService(NOTIFICATION_SERVICE);
  37.             Resources res = MainActivity.this.getResources();
  38.         builder = new Notification.Builder(MainActivity.this);
  39.         builder.setContentIntent(contentIntent) .
  40.        setSmallIcon(R.drawable.ic_launcher)//设置状态栏里面的图标(小图标)                     .setLargeIcon(BitmapFactory.decodeResource(res, R.drawable.i5))//下拉下拉列表里面的图标(大图标)        .setTicker("this is bitch!") //设置状态栏的显示的信息
  41.            .setWhen(System.currentTimeMillis())//设置时间发生时间
  42.            .setAutoCancel(true)//设置可以清除
  43.                       .setContentTitle("This is ContentTitle")//设置下拉列表里的标题
  44.                       .setContentText("this is ContentText");//设置上下文内容
  45.                     n = builder.getNotification();//获取一个Notification
  46.                     n.defaults =Notification.DEFAULT_SOUND;//设置为默认的声音
  47.                     nm.notify(NOTIFICATION_BASE_NUMBER, n);//显示通知 break; }
  48.                                }
  49.                       };
  50. }
複製代碼


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






歡迎光臨 TShopping (http://www.tshopping.com.tw/) Powered by Discuz! X3.2