关注微信公众号 太平洋学习网 扫描二维码
最新消息:关注【太平洋学习网】微信公众号,可以获取全套资料,【全套Java基础27天】【JavaEE就业视频4个月】【Android就业视频4个月】

android notification通知显示与点击跳转事件

Android 太平洋学习网 浏览 评论

 本章将介绍android notification通知显示并跳转到指定的Activity页面的事件,notification通知几乎是每一个android app都有的功能,该功能大大提高了app的开瓶率(抱歉,app不是啤酒),使用极其广泛,下面是notification通知的简单案例。

第一步:在activity_main.xml中添加一个发送通知的小按钮,代码如下。

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/activity_main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.baidu.notificationdemo.MainActivity">
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="发送通知"
        android:onClick="sendNotiClick"/>
</RelativeLayout>

效果如图所示。

Image 3.jpg

第二步:在MainActivity中实现sendNotiClick发送notification通知的点击事件,代码如下。

package com.baidu.notificationdemo;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.support.v7.app.NotificationCompat;
import android.view.View;
public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }
    //点击事件
    public void sendNotiClick(View view){
        //设置状态栏通知基本样式
        NotificationCompat.Builder mBuilder =
                (NotificationCompat.Builder) new NotificationCompat.Builder(this)
                        .setSmallIcon(R.mipmap.ic_launcher)
                        .setContentTitle("通知的标题")
                        .setContentText("Hello World!,你好吗?");

        //添加通知的事件(点击跳转到指定页面SecondActivity)
        Intent resultIntent = new Intent(this,SecondActivity.class);
        //intent可以携带参数到指定页面的,这里省略
        //resultIntent.putExtra(key,value);
        PendingIntent pendingIntent = PendingIntent.getActivity(this,0,resultIntent,PendingIntent.FLAG_UPDATE_CURRENT);
        mBuilder.setContentIntent(pendingIntent);
        
        //不同消息id设置不一样就好了
        int notificationId = 001;
        NotificationManager manager = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);
        manager.notify(notificationId,mBuilder.build());
    }
}

 点击通知按钮之后就会在android app的状态栏提示通知信息,如图。

Image 2.jpg

当你点击消息内容的时候,会自动跳转到SecondActivity这个页面,SecondActivity这个页面我已经新建了,只是没有贴出来。

来源网站:太平洋学习网,转载请注明出处:http://www.tpyyes.com/a/android/2017/0724/145.html

    与本文相关的文章