Jac*_*ień 22 android android-widget
我正在用小部件升级我的应用程序.这不是我做过的第一个小部件.我总是遇到奇怪的问题,但最终小部件在列表中出现了问题.
这是我到目前为止所做的:
Run Code Online (Sandbox Code Playgroud)<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android" android:minWidth="110dp" android:minHeight="30dp" android:updatePeriodMillis="86400000" android:initialLayout="@layout/widget_layout" android:resizeMode="none"> </appwidget-provider>
<application>部分中添加了要显示的小部件(由于某种原因,此处无法粘贴清单片段,它只是没有显示,请在此处查看代码)仍然无法在小部件列表中找到小部件.我在真实设备上调试应用程序.我正在使用库项目,但是小部件文件,但我在项目中直接运行.这可能发生什么?
siv*_*ag1 28
遇到类似的问题,这就是我发生的事情.在添加minResizeHeight之前,下面的Widget从未出现在Widget抽屉中.很奇怪,但可能是可调整大小的小部件所必需的.可能会更友好.
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
android:initialLayout="@layout/pmt_schedule_scroll_widget"
android:minHeight="146dip"
android:minResizeHeight="73dp"
android:minWidth="146dip"
android:resizeMode="vertical"
android:updatePeriodMillis="0" />
Run Code Online (Sandbox Code Playgroud)
Cha*_*aya 23
这种问题可能发生在两种情况下.两者都在上面回答,这是一个完整的答案,我已经面对两个场景并解决了它们.
如果应用程序在清单中指定android:installLocation ="preferExternal"参数,则App将安装在外部存储器中,并且不会显示在窗口小部件列表中.此外,如果您已经让手机在SD卡上安装所有应用程序,也会发生这种情况.
转到设置 - >应用程序 - > YourApp然后"移动到手机".这会将应用程序移动到您的手机内存中,现在您可以在小部件列表中看到小部件
如果上述修复程序无法解决您的问题,那么您可能拥有一个带有android 4.XX版本的设备.
然后,您必须在widget_info.xml文件中至少设置以下参数
android:minHeight ="XXXdp"android:minWidth ="XXXdp"
小智 7
我尝试了所有可能的解决方案,没有任何对我有用......最后我解决了它.
在我的例子中,问题是过度思考:我认为在元数据标签中我们需要为提供者定义一个唯一的名称(例如:"com.example.myprovider")以及链接到xml资源.
错误:
<meta-data
android:name="com.example.myprovider"
android:resource="@xml/widget_info" />
Run Code Online (Sandbox Code Playgroud)
对:
<meta-data
android:name="android.appwidget.provider"
android:resource="@xml/widget_info" />
Run Code Online (Sandbox Code Playgroud)
您需要在清单文件中注册BroadcastReceiver.例如:
<receiver
android:icon="@drawable/icon"
android:label="Example Widget"
android:name="MyWidgetProvider" >
<intent-filter >
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
</intent-filter>
<meta-data
android:name="android.appwidget.provider"
android:resource="@xml/widget_info" />
</receiver>
Run Code Online (Sandbox Code Playgroud)
我从http://www.vogella.com/articles/AndroidWidgets/article.html借用了这段代码
请参阅链接以获取完整教程
| 归档时间: |
|
| 查看次数: |
13564 次 |
| 最近记录: |