首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > 移动开发 >

在抉择程序widget时弹出本程序的widget说明以供选择

2012-06-30 
在选择程序widget时弹出本程序的widget说明以供选择Widget操作目标:在选择widget时弹出widget功能说明界面

在选择程序widget时弹出本程序的widget说明以供选择

Widget操作


目标:在选择widget时弹出widget功能说明界面,在此界面中选择widget(同一程序拥有多个功能不同的widget,需要在选择时先弹出说明界面)

思路:
1.在widget启动的update方法中启动service
2.由service启动SettingActivity
3.在SettingActivity中发送广播
4.在widget的onReceiver方法中接受广播,改变widget状态

问题:
由于AppwidgetProvider中只能通过RemoteView 操作widget
能改变的属性非常少。

只能改改图片背景 按钮素材之类
可以做出皮肤替换之类的功能

但是难以进行功能选择(布局无法修改)

解决方案:
包所有widget布局/功能放在同一个布局文件中。
通过setViewVisbillty来决定显示哪个widget 达到功能选择的目的

问题:
必须预先在xml中定义widget的大小,若多个widget大小不一致,则必须按最大的指定。
浪费空间

多个widget大部分是某个功能的 完整/精简版 提供不同大小的widget
若要预先指定大小,则丧失了选择widget功能的意义。

解决方案:
暂无.
Google未开放相关API
原生Lanuch内使用私有对象(mWorkSpace)操作widget ,无法在我们的程序中操作
各个OEM厂商定制的Lanuch各有不同

热点排行