小部件预览图像

9
我的应用程序预览图看起来像这样:enter image description here 如何使它看起来像WhatsApp聊天预览,小而带有阴影。我手机上的其他应用程序也使用同样类型的预览。
我的小部件xml:
<?xml version="1.0" encoding="utf-8"?>
<appwidget-provider
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:initialLayout="@layout/appwidget"
    android:minHeight="40dp"
    android:minWidth="320dp"
    android:previewImage="@mipmap/ic_launcher"
    android:updatePeriodMillis="300000" >
</appwidget-provider>

清单:

<receiver
            android:name=".activities.MyWidgetProvider"
            android:label="Example Widget">
            <intent-filter>
                <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
            </intent-filter>
            <meta-data
                android:name="android.appwidget.provider"
                android:resource="@xml/widget_info" />
        </receiver>

更新:

实际上,我已经注意到这些都是快捷方式而不是小部件,它们都有这个外观。

2个回答

16
你已将启动器图标设置为小部件预览图像。
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
  ...
  android:previewImage="@drawable/widget_preview">
</appwidget-provider>

我建议您使用模拟器中的应用程序(Widget Preview)创建一个带有小部件的截图,以便获得正确大小的预览。如果不满意,您还可以编辑图片。

无论如何,务必将它放在drawable-nodpi文件夹中。

官方指南请参考:https://developer.android.com/guide/topics/appwidgets/index.html#preview。其他开发经验,请参见此链接:Android Widget: previewImage size


我找不到这个应用程序,它应该在应用抽屉里吗? - olfek
@daka 当你启动模拟器时,它会出现在应用列表中。在底部,你会找到_Widget Preview_(因为默认情况下它们会按名称排序)。我在一个模拟的Nexus 5X Android Oreo 8.0上找到了它。 - JJ86
我看不到它,我也在使用Oreo。 - olfek
也许模拟器出了些问题。尝试重新创建它。如果这不起作用,建议您提出单独的问题,并可以附带一些屏幕截图。 - JJ86
2
Widget 预览应用程序仅会在运行 Android 8.0 或更早版本的模拟器上显示。 - Westy92

0

看起来你将ic_launcher放置为小部件预览图像。

  • 您需要制作自定义图像,其中将大图像作为Alpha放在背景中,并在其上以小尺寸将您的图标放置在右上角。

我通过使用Photoshop生成预览图像的自定义图像完成了相同的事情,并且它可以正常工作。

谢谢。


我理解。但是很多应用程序都有相同的预览(在背景中作为 Alpha 的大图像,以及小尺寸的图标)。这不可能是所有应用程序都采用了完全相同的设计。这是一些默认的操作系统设计,而不是经过Photoshop处理的。 - Dim

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接