从Android小部件屏幕指南http://developer.android.com/guide/practices/ui_guidelines/widget_design.html,我们知道,主屏幕有4 * 4个单元格,纵向方向,每个单元格宽80像素,高100像素。
我认为这些是针对基线HVGA屏幕的。如果对于大屏幕和hdpi屏幕,它们仍然有4 * 4个小区用于小部件,每个纵向方向的小区仍然是80像素* 100像素?
感谢。
答案 0 :(得分:2)
您指的像素是与设备无关的像素。正如您在the documentation here中看到的那样:
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
android:minWidth="294dp"
android:minHeight="72dp"
android:updatePeriodMillis="86400000"
android:initialLayout="@layout/example_appwidget"
android:configure="com.example.android.ExampleAppWidgetConfigure" >
</appwidget-provider>
注意他们如何使用dp单位,而不是px。这允许小部件正确缩放到不同的屏幕分辨率。
对于4x4单元格的屏幕,这是默认Android主屏幕管理器的属性。无论屏幕分辨率如何,当使用默认的Android主屏幕时,主屏幕将是4x4单元格。
还有其他主屏幕管理器,其中包含4x4以上的单元格,例如Archos平板电脑上的自定义主屏幕管理器。如果您希望appwidget能够在其他一些主屏幕管理器中工作,这些管理器可以执行特殊操作,例如增加屏幕上的单元格数量或允许文本输入和滚动应用程序小部件,那么您可能需要编写自定义版本的那些主屏幕管理员的小部件。
因此,假设您始终瞄准默认主屏幕管理器,您的问题的答案是屏幕始终是4x4单元格,只要您坚持使用设备无关的像素,您就不需要做任何额外的事情来制作appwidget规模并在更高分辨率下正常工作。
答案 1 :(得分:2)
使用图像时,必须将不同尺寸的图像放入项目目录中的相关文件夹中。
例如: - 您使用100dip宽度进行图像查看 - 在“drawable-mdpi”文件夹中,你应该放置宽度为100px的.png。 - 文件夹“drawable-hdpi”.png,宽度为150px - 文件夹“drawable-ldpi”.png,宽度为75px