我有一个非常简单的appwidgetprovider用于测试小部件:
public class Test extends appwidgetprovider { public voID onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIDs){ RemoteVIEws vIEws = new RemoteVIEws(context.getPackagename(), R.layout.test_layout); vIEws.setTextVIEwText(R.ID.TextVIEw01, "Test message"); }}
test_layout如下所示:
<linearLayout androID:ID="@+ID/linearLayout01" androID:layout_wIDth="fill_parent" androID:layout_height="fill_parent" xmlns:androID="http://schemas.androID.com/apk/res/androID"> <TextVIEw androID:ID="@+ID/TextVIEw01" androID:layout_wIDth="fill_parent" androID:layout_height="fill_parent"> </TextVIEw></linearLayout>
问题是小部件出现在模拟器屏幕中但没有任何文本.我敢肯定,这是我弄乱的东西,但我找不到它是什么……
解决方法:
您忘记设置要使用的RemoteVIEw.您的appwidgetprovider代码应为:
public class Test extends appwidgetprovider { public voID onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIDs){ super.onUpdate(context, appWidgetManager, appWidgetIDs); RemoteVIEws vIEws = new RemoteVIEws(context.getPackagename(), R.layout.test_layout); vIEws.setTextVIEwText(R.ID.TextVIEw01, "Test message"); appWidgetManager.updateAppWidget(appWidgetIDs, vIEws); }}
总结 以上是内存溢出为你收集整理的android TextView.setText不适用于简单的小部件全部内容,希望文章能够帮你解决android TextView.setText不适用于简单的小部件所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)