如何制作自定义小部件?
当使用开发Widgets for Android时,似乎无法将自己的自定义View类添加到AppWidgetProvider。如何制作自定义小部件?
例如我创建了一个扩展视图的自定义类,它在Activity中使用时很好,但是当我将它添加到Widget时,我得到一个“ClassNotFoundException”,因为Android似乎只允许一组特定的系统小部件被添加。
我看过一些应用程序,看起来像他们已经有自己的自定义小部件。例如,当点击显示应用程序快捷方式时,会显示一个径向菜单。这些如何实施?是否有解决使用我自己的自定义小部件?他们似乎有一个他们可以在小部件中绘制的画布。
好的快速示例https://market.android.com/details?id=zombiesinthelab.widgets.droidpetwidget&feature=top-paid 所以这个小部件是通过只绘制ImageViews并定期更新它们而不是使用画布绘制框架来完成的?
的Android窗口小部件只能包含布局的小部件的支持RemoteViews。见this list:
甲RemoteViews对象(以及, 因此,一个App的widget)可以 支持以下布局类:
FrameLayout LinearLayout RelativeLayout
和以下widget类:
AnalogClock Button Chronometer ImageButton ImageView ProgressBar TextView
>这些类的后代不支持 。
注意最后一句话。你不能改变这种行为,它在android中被硬编码。
是的,我学会了艰辛的道路,并创造了一个。 – DeliveryNinja 2011-04-04 10:06:01
你是什么意思_add它的Widget_? – 2011-04-04 09:35:46
我的意思是在我的小部件xml布局中,由于RemoteViews不支持它,我无法使用com.myClass.MyWidget而没有获取ClassNotFound。 – DeliveryNinja 2011-04-04 09:57:09