RemoteViews 通知栏布局

2020-10-13  本文已影响0人  主音King

RemoteViews 通知栏显示ui差异

remoteViews = new RemoteViews(this.getPackageName(), R.layout.test);
 remoteViews.setImageViewResource(R.id.image, R.mipmap.app_icon);
remoteViews.setTextViewText(R.id.title, "测试");
 remoteViews.setTextViewText(R.id.text, "测试内容");
remoteViews.setTextViewText(R.id.time, showDate());
remoteViews.setTextViewText(R.id.time,时间);
NotificationCompat.Builder builder = new NotificationCompat.Builder(this, channelName).setContent(remoteViews)
                .setSmallIcon(R.mipmap.icon)
                .setContentIntent(clickIntent);

test.xml 自己定义

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#fff"
    >

    <ImageView
        android:id="@+id/image"
        android:layout_width="40dp"
        android:layout_height="40dp"
        android:layout_marginStart="10dp"
        android:layout_alignParentLeft="true"
        android:layout_centerVertical="true"
        android:scaleType="centerCrop" />

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerVertical="true"
        android:layout_marginLeft="10dp"
        android:layout_toLeftOf="@+id/time"
        android:layout_toRightOf="@+id/image"
        android:orientation="vertical">

        <TextView
            android:id="@+id/title"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:ellipsize="end"
            android:fadingEdge="horizontal"
            android:fadingEdgeLength="10dp"
            android:singleLine="true"
            android:text=""
            android:textColor="#000000"
            android:textSize="16sp" />

        <TextView
            android:id="@+id/text"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/title"
            android:ellipsize="end"
            android:fadingEdge="horizontal"
            android:fadingEdgeLength="10dp"
            android:singleLine="true"
            android:text=""
            android:textColor="#000000"
            android:textSize="12sp" />
    </LinearLayout>
    <TextView
        android:layout_marginRight="10dp"
        android:layout_marginTop="10dp"
        android:layout_alignParentRight="true"
        android:textSize="11sp"
        android:textColor="#000000"
        android:text="下午 4:30"
        android:id="@+id/time"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

</RelativeLayout>

在做音乐相关
通知栏在不同设备差异
华为手机:通知栏icon默认左间距无margin 需要添加10dp;通知栏默认背景可修改,通过自定义布局覆盖
小米手机:通知栏icon默认左间距有margin 大概10dp;通知栏默认背景为白色不可通过自定义布局覆盖
统一:icon为app图标;背景为白色;startMargin统一设置10dp;字体统一用黑色;

上一篇 下一篇

猜你喜欢

热点阅读