android - 如何让我的 AppWidget 自动填充主屏幕的宽度?

标签 android android-layout android-launcher android-appwidget android-resolution

我正在开发一个小部件。在典型的手机上,我希望它是 4x2,填满主屏幕的宽度。然而,在一些较大的手机(即三星 Galaxy Mega)上,启动器有 5 个单元格的宽度。我正在尝试找到根据启动器单元尺寸自动将我的小部件提供程序更改为 5x3 的最佳方法。

目前,我们有两个提供商:一个 4x2 和一个 5x3。由于我们只想在普通尺寸的手机上显示一个 (4x2)(它们不支持 5x3),因此我们在添加小部件时进行运行时检查,以检查设备型号是否与具有 5 芯的型号之一匹配宽发射器。然后我们禁用其他小部件提供程序组件。然而,这并不理想,因为 5x3 会暂时显示在应用程序抽屉中,如果用户尝试添加它,则会导致启动器强制关闭。

关于如何解决这个问题有什么想法吗?我意识到我很可能无法准确读取单元格宽度大小,因为有大量的启动器,而且没有可检查的 API。但是,我认为我们都会同意,一定有比保留具有 5 格屏幕的静态设备列表更好的方法(更不用说拥有自定义启动器的人可以设置宽度范围)。

我曾简要考虑过使用资源文件夹限定符(sw720dp 等)...但这仍然无法解决确定用户启动器在单元格中的宽度的问题。

感谢您的帮助, 画画

附言我也意识到这里提出了一个类似的问题:Appwidget Maximum Width that fits all screen sizes没有评论或答案。任何输入将不胜感激。

最佳答案

Any thoughts on how to work around this?

允许您的应用程序小部件可调整大小,以便希望它填满主屏幕宽度的用户可以选择这样做。

关于android - 如何让我的 AppWidget 自动填充主屏幕的宽度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20707679/

相关文章:

android - 如何在 Android 的 Spinner View 中添加左侧可绘制对象

Android 布局 - 扩展 ImageView 以填充宽度,但没有更大?

Android 可检查的 LinearLayout 状态

android - 获取启动器 Activity 名称

android - 多个动态壁纸的一个启动器图标

Android Universal Image Loader 存储下载进度 ListView

java - 使用 Lollipop SDK 在 Android 中的工具栏/ActionBar 中选取标题?

android - 如何使用 MediaCodec Android 压缩 mp4 视频?

android - Gradle:强制使用存储库作为依赖项

android - 不显示具有透明背景的应用程序图标