AppWidgetProvider使用注意

1、每个AppWidget都有一个AppWidgetProviderInfo对象,该对象描述了每个AppWidget的基本数据(meta-data)信息 ,其定义在节点信息。

2、每个AppWidget都对应一个RemoteViews视图对象,该RemoteViews提供了特定AppWidget的展示(View视图)和操作。

3、AppWidgetManager类维护了应用程序中所有的AppWidget,并且为给每个AppWidget特定的Id去标识他们(一般我们用appWidgetId去标识)。通过给定的appWidgetId,AppWidgetManager可以管理对应的AppWidget,例如:更新该AppWidgetId的RemoteViews视图,删除AppWidget对象等 。

4、AppWidgetProvider广播类从来说是一个监听器,系统把对AppWidget的操作(例如,创建和更新等)分发给AppWidgetProvider类去处理。

4、AppWidgetProvider广播类从来说是一个监听器,系统把对AppWidget的操作(例如,创建和更新等)分发给AppWidgetProvider类去处理。

对每个AppWidget,我们可以创建多个其多个实例,当然这些实例对应于不同的appWidgetId。 假设存在这么个MyAppWidgetProvider广播类,以及对应的MyAppWidgetProviderInfo对象。 MyAppWidgetProvider.class 代表了由该MyAppWidgetProvider创建的窗口小部件(AppWidget)的类型,一般用CompontentName对象形式表示 。 那么存在如下关系:

从上图可是,每个appWidget都对应于一个MyAppWidgetProvider类,于是当任何一个appWidgetId发生变化时,我们需要同步其他实例,保持同步性。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,200评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,167评论 25 709
  • *面试心声:其实这些题本人都没怎么背,但是在上海 两周半 面了大约10家 收到差不多3个offer,总结起来就是把...
    Dove_iOS阅读 27,241评论 30 472
  • 翻译自“View Controller Programming Guide for iOS”。 1 弹出视图控制器...
    lakerszhy阅读 3,669评论 2 20
  • 其实严格意义上来讲我在大一第一学期末就已经开始接触到健身了,那时候因为刚上大学对自己比较放松,体重已经暴涨到接近1...
    努力努力再更努力阅读 188评论 0 1