android - 如果 Android API 不支持,如何隐藏小部件?

标签 android


我正在开发多个小部件,其中一个使用 ListView,但 Android 2.3 不支持 ListView。
因此,如果当时我的应用程序安装在 Android 2.3 中,带有 ListView 的小部件不应显示在小部件的列表中。
但是我的那个带有 ListView 的小部件显示在小部件的列表中,如果我点击它,它会显示强制关闭。

这就是为什么我想从小部件列表中隐藏那些小部件。
如果有人有任何建议,请回复。

它向我显示强制关闭并跟踪小部件的错误
enter image description here

我在 Android 4.2 中运行的相同小部件然后它按照以下列表显示我

enter image description here

谢谢。

最佳答案

I am developing multiple widgets

不,您正在开发多个应用小部件。很抱歉这些术语令人困惑,但在您的问题中使用正确的术语对您来说非常重要。

One of them uses ListView but ListView is not supported by Android 2.3.

正确,ListView在 Android 2.3 或更低版本的应用小部件中不受支持。

So, if my app is installed in Android 2.3 at that time widget with ListView should not display in widget's list.

第 1 步:创建 res/values/bools.xml文件,定义 bool 资源,名称为 is_honeycomb ,值为 false .

第 2 步:创建 res/values-v11/bools.xml文件,定义另一个 bool 资源,同名(is_honeycomb),值为true

第 3 步:在您的 list 中,在 <receiver>AppWidgetProvider 的元素使用 ListView , 添加 android:enabled="@bool/is_honeycomb" .

最终效果是在 Android 3.0+ 设备上,您的 ListView应用程序小部件将是一个可用选项,但在 Android 2.3 和更低版本的设备上,它不会。

关于android - 如果 Android API 不支持,如何隐藏小部件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16085393/

相关文章:

java - 为什么 Firebase 中的数据没有显示在我的 TextView 中?

android - Play 商店应用详细信息链接在手机上不起作用

android - 自 android 4.1 以来,android webView 是否会基于 Chrome 引擎?

android - Espresso - 在 AsyncTask 期间截取屏幕截图

android - 提交 Android Studio 时忽略文件

java - 停止 onCreate() 方法

java - 导航 View 创建产生错误和崩溃 Activity

android - 在 Gradle 产品 flavor 上调试签名配置

android - 应用程序不显示 adwhirl 广告

android editText最大限制