(每次学习一点xamarin就做个学习笔记和视频来加深记忆巩固知识)
如有不正确的地方,请帮我指正。
通知(Notification)简介
当一个应用程序不在前台运行而在后台运行时,这时有个消息希望让用户知道,那么可以在状态栏显示一个消息图标,下拉状态栏后可以看到具体消息,这就是通知功能。在Activity中一般用得少,主要是用在Service里。
通知的使用
使用方法很简单 ,创建一个Notification对象,然后使用NotificationManager对象的Notify方法发送出去。
public class MainActivity : AppCompatActivity,IOnClickListener
{
public void OnClick(View v)
{
switch (v.Id)
{
case Resource.Id.button1://发送通知
SendNotice();
break;
}
}
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
SetContentView (Resource.Layout.Main);
Button btn1 = this.FindViewById<Button>(Resource.Id.button1);
btn1.SetOnClickListener(this);
}
private void SendNotice()
{
NotificationManager manager = (NotificationManager)this.GetSystemService(NotificationService);
Notification notification = new NotificationCompat.Builder(this).SetContentTitle("快递通知")
.SetContentText("你购买的C#高级编程已发货了!")
.SetSmallIcon(Resource.Drawable.a1_16) //设置显示在状态栏的小图标
.SetLargeIcon(BitmapFactory.DecodeResource(this.Resources, Resource.Drawable.a1_32))//设置下拉后大图标
.SetContentIntent(GetPendingIntent()) //设置点击通知后要进入的activity
//.SetAutoCancel(true) //设置点通知后不再显示通知
//SetVibrate振动要在manifest文件中声明权限"android.permission.VIBRATE",参数500表示有通知来时先等待0.5秒,后面的表示振动1秒停2秒后再振动1秒
.SetVibrate(new long[] { 500, 1000, 2000, 1000 }) //设置通知来时的振动
//.SetSound(Android.Net.Uri.FromFile("/system/.........填写铃声具体路径"))
.SetLights(Color.Green, 1000, 1000) //第一个时间表示灯闪的时间为1秒,第二时间表示灯慢慢变暗的时间为1秒
.SetPriority(NotificationCompat.PriorityMax) //设置通知优先级
.Build();
manager.Notify(12345, notification);
}
//点击通知后要进入的activity
private PendingIntent GetPendingIntent()
{
Intent intent = new Intent(this, typeof(SecondActivity));
PendingIntent pi = PendingIntent.GetActivity(this, 0, intent, 0);
return pi;
}
}
代码和视频在我上传的CSDN资源中http://download.csdn.net/download/junshangshui/10022512