Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/197.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java NotificationCompat-如何添加没有图标的操作?_Java_Android_Notifications_Icons_Action - Fatal编程技术网

Java NotificationCompat-如何添加没有图标的操作?

Java NotificationCompat-如何添加没有图标的操作?,java,android,notifications,icons,action,Java,Android,Notifications,Icons,Action,上面的代码创建通知并向其添加一个操作(按钮)。我希望我的按钮不显示图标,但我不知道怎么做,因为parameteraddAction中的icon是必需的,不能为空 甚至可以在没有任何图标的情况下将操作按钮添加到通知中(顺便说一句,操作按钮上的图标似乎甚至没有显示在牛轧糖和奥利奥上)。使用NotificationCompat.action。并将0设置为图标的值 NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(t

上面的代码创建通知并向其添加一个操作(按钮)。我希望我的按钮不显示图标,但我不知道怎么做,因为parameter
addAction
中的
icon
是必需的,不能为空


甚至可以在没有任何图标的情况下将操作按钮添加到通知中(顺便说一句,操作按钮上的图标似乎甚至没有显示在牛轧糖和奥利奥上)。

使用NotificationCompat.action。并将0设置为图标的值

NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this, channelId)
                .setSmallIcon(R.drawable.schedule)
                .addAction(R.drawable.icon,"action test",pi)
                .setStyle(new NotificationCompat.BigTextStyle().bigText(body))
                .setContentTitle(title)
                .setContentText(body);

在我测试过的所有设备上运行

我想
addAction(0,“action test”,pi)
应该是一样的,看看它内部调用的源代码
addAction(新操作(图标、标题、意图))
但我不确定是否可以将0作为资源ID传递,而不是传递0,但okit不能为null
NotificationCompat.Action action =
            new NotificationCompat.Action.Builder(
                    0, "action test", pi
            ).build();

NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this, channelId)
            .setSmallIcon(R.drawable.schedule)
            .addAction(action)
            .setStyle(new NotificationCompat.BigTextStyle().bigText(body))
            .setContentTitle(title)
            .setContentText(body);