创建自定义通知,包括编辑文本 android
Create custom notification including Edit text android
我想创建一个自定义通知来直接从这样的通知中回复短信:
据我所知,普通通知的高度必须为 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
我该怎么办?
Create custom notification including Edit text android
您不能将 EditText
小部件放入 Notification
、应用小部件或任何其他使用 RemoteViews
.
的小部件中
why?
因为RemoteViews
就是这么写的。您仅限 certain widgets and containers.
what should I do to make that custom notification?
重新设计它不涉及 EditText
。
UPDATE:在 Android 7.0+ 上,您可以使用 MessagingStyle
和 RemoteInput
来接受来自 Notification
。这不符合问题的要求,但它是最接近的选项。
我想创建一个自定义通知来直接从这样的通知中回复短信:
据我所知,普通通知的高度必须为 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
我该怎么办?
Create custom notification including Edit text android
您不能将 EditText
小部件放入 Notification
、应用小部件或任何其他使用 RemoteViews
.
why?
因为RemoteViews
就是这么写的。您仅限 certain widgets and containers.
what should I do to make that custom notification?
重新设计它不涉及 EditText
。
UPDATE:在 Android 7.0+ 上,您可以使用 MessagingStyle
和 RemoteInput
来接受来自 Notification
。这不符合问题的要求,但它是最接近的选项。