zoukankan      html  css  js  c++  java
  • Android开发——Notification通知的各种Style详解

    本来是想与之前讲解使用Notification通知使用一起写的,查看了资料,觉得有必要将这Style部分单独拿出来讲解

    前篇:Android开发——Notification通知的使用及NotificationCopat.Builder常用设置API

    上一篇中也是介绍了两种常用的Style,这一篇算是扩展之前的内容

     

    BigTextStyle

    看了网上的资料,好像这个在之前的版本是点击通知栏的消息才会显示出在bigText中设置的文字,不过,我试的时候发现是直接显示出来了,它会将原来的setContentTitle和setContentText都替代,bigText替代contentText,bigcontentTitle替代ContentTitle

                android.support.v4.app.NotificationCompat.BigTextStyle style = new android.support.v4.app.NotificationCompat.BigTextStyle();
                    style.bigText("这里是点击通知后要显示的正文,可以换行可以显示很长很长很长很长很长很长很长很长很长很长很长很长很长
              很长很长很长长很长很长很长很长长很长很长很长很长长很长很长很长很长很长很长"); style.setBigContentTitle("点击后的标题"); //SummaryText没什么用 可以不设置 style.setSummaryText("末尾只一行的文字内容");

    之后直接调用setStyle,将style作为参数传入

    BigPictureStyle

    主要的还是bigPicture这个方法,其他两个类似之前的BigText,将原来的给替代掉了,不过不设置的话不会替代

    android.support.v4.app.NotificationCompat.BigPictureStyle style = new android.support.v4.app.NotificationCompat.BigPictureStyle();
    style.setBigContentTitle("BigContentTitle");
    style.setSummaryText("SummaryText");
    style.bigPicture(BitmapFactory.decodeResource(getResources(),R.drawable.small));

     

    InboxStyle

     每行内容过长时并不会自动换行,与BigText类似,设置有就会替代原来的ContentText和Title

    android.support.v4.app.NotificationCompat.InboxStyle style = new android.support.v4.app.NotificationCompat.InboxStyle();
    style.setBigContentTitle("BigContentTitle")
    .addLine("第一行,第一行,第一行,第一行,第一行,第一行,第一行")
    .addLine("第二行")
    .addLine("第三行")
    .addLine("第四行")
    .addLine("第五行")
    .setSummaryText("SummaryText");

    MessageingStyle

    消息通知,可快速回复message的通知。好像在Android N以上才能使用。目前手上的测试机是低版本的,没有快速回复的操作项。

    DecoratedCustonViewStyle

    DecoratedMediaCustonViewStyle

    MediaStyle

    多媒体播放通知,快捷的多媒体操作控件。可以自定义需要显示的操作控件内容。

    • setShowActionsInCompactView

    • setMediaSession

    • setShowCancelButton

    • setCancelButtonInten

     builder.addAction(android.R.drawable.ic_media_rew,"",null);
     builder.addAction(android.R.drawable.ic_media_play,"",null);
     builder.addAction(android.R.drawable.ic_media_ff,"",null);
     NotificationCompat.MediaStyle mediaStyle = new NotificationCompat.MediaStyle();
     mediaStyle.setShowActionsInCompactView(0,1,2);
     mediaStyle.setShowCancelButton(true);
     builder.setStyle(mediaStyle);

    呃,感觉我好像偏离主题了,Notification深入太深了,就先写到这里了,这些功能都是没有用到,我感觉学了好像没有多大意义,就先暂时放弃了!
  • 相关阅读:
    opencv 遍历Mat对象中数据方法-转
    JVM OutOfMemoryError 分析
    hibernate validation HV000030: No validator could be found for constraint
    通过aop实现rpc统一参数校验&异常捕捉
    java8 lambda groupingby 分组保持原来顺序
    递归判断素组是否有序
    dubbo 直连
    Linux 删除openjdk
    telnet命令调用远程dubbo 接口
    git submodule ssh key
  • 原文地址:https://www.cnblogs.com/stars-one/p/8371357.html
Copyright © 2011-2022 走看看