我的小部件上有一个进度轮,默认情况下是不可见的,每当我的服务运行以在小部件上执行某些任务时,它首先将该轮设置为可见,然后使用包含以下内容的远程 View 调用 updateAppWidget这个变化。 然后我继续做我需要做的所有事情,最后,在新的远程 View 中,我再次将其设置为不可见,并再次调用 updateAppWidget。
我已经在 android 2.2 的模拟器中和我的姐妹 htc Wildfire 2.2.1 上测试了这一点。两者都会使小部件失败(模拟器说“加载小部件时出现问题”,而野火用丹麦语说“Søg”,因为语言设置为丹麦语,即使如此,这还是很奇怪,会说“Søg”,因为这意味着“搜索”),每当它应该显示轮子时(尝试仅删除用于轮子的代码,然后它按预期工作。 奇怪的是,在我的 Nexus One 上的 Android 2.3 中,它运行得很好。一切都如预期(也在 2.3 模拟器上)。我正在制作的小部件是针对 2.2 构建的。
我尝试过搜索,但找不到其他人遇到此问题。 2.2 中的 appwidgets 不支持进度条吗?我不知道该怎么办:S
最佳答案
这是一个已知错误,如果您尝试通过 RemoteViews 对象更改 ProgressBar 的可见性,则会发生该错误。
解决方案:将进度条包装在布局中,并使用 setViewVisibility() 使布局不可见/消失,而不是进度条。
关于Android 2.2 appwidget进度条滚轮导致widget失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11486032/