有人能告诉我在appWidget中可以使用哪些观点吗?
谢谢!
答案 0 :(得分:5)
RemoteViews对象(以及App Widget)可以支持以下布局类:
- 的FrameLayout
- 的LinearLayout
- RelativeLayout的
- GridLayout的
以下小部件类:
- AnalogClock
- 按钮
- 精密计时
- 的ImageButton
- ImageView的
- 进度
- 的TextView
- ViewFlipper
- 的ListView
- GridView的
- StackView
- AdapterViewFlipper
不支持这些类的后代。
RemoteViews还支持ViewStub,它是一个不可见的,零大小的视图,可用于在运行时懒惰地夸大布局资源。
同样从android 3.0开始,支持下一个观看次数:
- ListView - 显示垂直滚动列表中的项目的视图。有关示例,请参阅Gmail应用小部件。
- GridView - 显示二维滚动网格中的项目的视图。有关示例,请参阅“书签”应用小部件。
- StackView - 堆叠卡片视图(有点像rolodex),用户可以向上/向下轻弹前卡以查看上一张/下一张卡片, 分别。示例包括YouTube和图书应用小部件。
- AdapterViewFlipper - 适配器支持的简单ViewAnimator,可在两个或多个视图之间设置动画。一次只能展示一个孩子。
答案 1 :(得分:3)
请参阅Android开发者网站上的app widgets article,以获取可在窗口小部件中使用的布局和视图的列表。
答案 2 :(得分:0)
克里斯托弗提供的这份清单在技术上是正确的,但并不完整。尽管可以使用这些布局和视图,但是无法调用许多(大多数?)演示方法。例如,如果您尝试以编程方式更改其中一个受支持的窗口小部件(TextView)的背景颜色,您将收到运行时错误:
WARN / AppWidgetHostView(606):android.widget.RemoteViews $ ActionException:view:android.widget.TextView无法使用RemoteViews方法:setBackgroundColor(int)
我还没有看到关于支持和不支持的确切列表。 android-dev列表在主题上看到了一些线程(one,two),但不多了。 work-arounds并不是那么好。