TShopping

 找回密碼
 註冊
搜索
查看: 151|回復: 0

[教學] Android關於Notification.Builder的使用

[複製鏈接]
發表於 2016-7-13 08:56:28 | 顯示全部樓層 |閱讀模式
 
Push to Facebook Push to Plurk Push to Twitter 
在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。

8.png

 

臉書網友討論
您需要登錄後才可以回帖 登錄 | 註冊 |

本版積分規則



Archiver|手機版|小黑屋|免責聲明|TShopping

GMT+8, 2016-12-5 04:18 , Processed in 0.060835 second(s), 25 queries .

本論壇言論純屬發表者個人意見,與 TShopping綜合論壇 立場無關 如有意見侵犯了您的權益 請寫信聯絡我們。

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表