我使用' bigContentView'将自定义内容放入我的通知中,将其设置为与我在主屏幕上为小部件建立的remoteViews
相同的Notification notification = new NotificationCompat.Builder(context)
.setContentTitle(placeName)
.setContentText(contentText)
.setSmallIcon(drawableId)
.setOngoing(false)
.setPriority(Notification.PRIORITY_MIN)
.setVisibility(Notification.VISIBILITY_PUBLIC)
.build();
notification.bigContentView = remoteViews;
notificationManager.notify(0, appWidgetId, notification);
。我遇到的问题是通知内容的高度似乎保持不变,并且不会缩小以适应内容。
例如,当我调整窗口小部件的大小时,新的窗口小部件内容将放置在通知中,但它始终具有相同的高度(间隙填充为白色):
相关代码如下:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="@dimen/widget_margin"
android:id="@+id/widget" >
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/imageView_port"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true" />
</RelativeLayout>
remoteViews基于以下布局:
AppWidget
(布局中还有其他一些内容,但上面是基本布局,我不认为其余内容会产生重大影响......当然布局工作正常{{1} } context。)
编辑:图像视图更新为:
remoteViews.setImageViewUri(imageViewId, uri);
appWidgetManager.updateAppWidget(appWidgetId, remoteViews);
我是否做了一些明显错误的事情,以防止通知真正符合remoteViews
内容?
答案 0 :(得分:1)
似乎Android保留了通知的高度!虽然大通知样式的高度也保留!您必须根据这些大小创建通知。
根据android原生通知的事情,你的图像内部通知的方面比例也是如此。祝你好运:)
答案 1 :(得分:0)
我认为android:padding="@dimen/widget_margin"
中的RelativeLayout
导致问题。
删除此行后尝试。
以及可能导致此问题的另一件事是ImageView
如果上述情况不起作用,您可以尝试以下
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/widget" >
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:id="@+id/imageView_port"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true" />
</RelativeLayout>
希望有所帮助
答案 2 :(得分:0)
根据您的问题,请检查您的RemoteView的宽度!可能是宽度和高度分别无法设置。我拍摄了尺寸为1920x1080的图像,所以我得到了与你相同的输出。所以请先确认一下。我已经使用了您的代码,它可以正常使用适当大小的图像。
请检查此链接:Expandable Notifications for Android
由于