"_Problem Loading Widget"消息

And*_*der 42 java android loading android-widget android-layout

当加载小部件时,如果它找不到资源或其他东西,则说明问题加载小组件.就这样!惊人!此消息仍保留在主屏幕上,甚至没有说明哪个小部件无法加载.

我通过反复试验弄清楚但是我想知道是否有任何地方可以在发生这种情况时找到错误消息.Android会在哪里说出加载小部件的问题,甚至是哪个小部件无法加载?

Gan*_*nus 115

检查您在窗口小部件中使用的元素.

文档链接

RemoteViews对象(以及App Widget)可以支持以下布局类:

  • 的FrameLayout
  • 的LinearLayout
  • 的RelativeLayout
  • 网格布局

以下小部件类:

  • AnalogClock
  • 按键
  • 时计
  • 的ImageButton
  • ImageView的
  • 进度条
  • 的TextView
  • ViewFlipper
  • 列表显示
  • 网格视图
  • StackView
  • AdapterViewFlipper

使用禁用元素会导致这种情况

问题加载小部件

消息,没有说它发生在哪里.

  • @Gangnus需要注意的一点是,Logcat通常会向您显示错误.您可能忽略的是它并未将其显示为您的应用程序包的一部分!所以从Logcat中删除包过滤器! (7认同)
  • 任何经过这个问题的人..不要使用 ConstraintLayout。它不适用于小部件。 (3认同)
  • 伟大的ans @Gangnus (2认同)
  • 甚至使用AppCompat元素,如`android.support.v7.widget.GridLayout` [将无效](https://developer.android.com/guide/topics/appwidgets/index.html#CreatingLayout). (2认同)
  • 我试图在我的小部件中使用 ConstraintLayout,这解释了我收到错误的原因。谢谢! (2认同)

Unc*_*onn 25

如评论中所述,检查logcat.您将看到的是NullPointerException.我之前也有这个.

  • @Maarten需要注意的一点是,Logcat通常会向您显示错误.您可能忽略的是它并未将其显示为您的应用程序包的一部分!所以从Logcat中删除包过滤器! (16认同)
  • 我现在有这个问题,logcat保持安静. (13认同)
  • 我想补充说,如果它是一个资源,有时会发出警告信息.我认为并不总是显示错误. (5认同)

Kuf*_*ffs 10

另一个可能的原因是:

我在日志中看到了这个:

无法解析属性

问题是我试图使用当前主题中的颜色作为我的一个布局的背景.

例如

android:background="?themeColor"
Run Code Online (Sandbox Code Playgroud)

将其更改为特定颜色可解决此问题.

android:background="@color/White"
Run Code Online (Sandbox Code Playgroud)


Eur*_*nes 7

基本上小部件会吞下异常。只需在您的 logcat 中设置适当的过滤器,您就可以看到问题所在...

在此处输入图片说明

上面,我只是在搜索单词“ Widget ”并且没有在任何特定应用程序上设置过滤器。它基本上给了我Throwable.getMessage()没有完整堆栈跟踪的信息。