创建自定义通知,包括编辑文本android

时间:2015-10-04 22:33:42

标签: android notifications custom-controls

我想创建一个自定义通知,直接通过以下通知回复短信:

enter image description here

正如我所理解的那样,普通通知必须具有64dp高度,但您可以使用API​​> 16中较大的通知作为可扩展通知,但我认为64dp高度适合我的情况。我使用了这段代码,但是当我的自定义通知布局有编辑文本时崩溃了:

RemoteViews remoteViews = new RemoteViews(getPackageName(),R.layout.widget);
                NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(context)
                        .setSmallIcon(R.mipmap.ic_launcher)
                        .setContent(remoteViews);
                Intent resultIntent = new Intent(context, MainActivity.class);
                TaskStackBuilder stackBuilder = TaskStackBuilder.create(context);
                stackBuilder.addParentStack(MainActivity.class);
                stackBuilder.addNextIntent(resultIntent);
                PendingIntent resultPendingIntent = stackBuilder.getPendingIntent(0,PendingIntent.FLAG_UPDATE_CURRENT);
                NotificationManager mNotificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
                mNotificationManager.notify(100, mBuilder.build());

错误:

android.app.RemoteServiceException: Bad notification posted from package com.example.x: Couldn't expand RemoteViews for: StatusBarNotification

我该怎么办?

1 个答案:

答案 0 :(得分:4)

  

创建自定义通知,包括编辑文本android

您无法将EditText窗口小部件放入Notification应用窗口小部件或使用RemoteViews的任何其他窗口小部件。

  

为什么?

因为这就是RemoteViews的写法。您仅限于certain widgets and containers

  

如何制作自定义通知?

将其重新设计为不涉及EditText