【发布时间】:2013-12-08 23:58:51
【问题描述】:
我创建了一个简单的小部件,只有一个按钮和 textView。当我第一次将我的小部件添加到主屏幕时,会出现一条 FC 消息并添加小部件。并且按钮单击吐司消息将不起作用。单击小部件按钮时,只有我需要一条吐司消息。我已经阅读了很多教程,但无法弄清楚问题所在。任何想帮助的天才..真的很感激帮助..谢谢..
widgetProvider.java
public class widgetProvider extends AppWidgetProvider{
@Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager,
int[] appWidgetIds) {
final int N = appWidgetIds.length;
for (int i=0; i<N; i++) {
int appWidgetId = appWidgetIds[i];
Intent intent = new Intent(context, widgetProvider.class);
intent.setAction(AppWidgetManager.ACTION_APPWIDGET_UPDATE);
PendingIntent pendingIntent = PendingIntent.getBroadcast(context, 0, intent, 0);
RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widgetlayout);
views.setOnClickPendingIntent(R.id.button1, pendingIntent);
appWidgetManager.updateAppWidget(appWidgetId, views);
}
}
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals(AppWidgetManager.ACTION_APPWIDGET_UPDATE)) {
Toast.makeText(context, "Button Clicked", Toast.LENGTH_SHORT).show();
}
}
}
AndroidManifest.xml
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<receiver android:name=".widgetProvider" android:label="@string/app_name">
<intent-filter >
<action
android:name="android.appwidget.action.APPWIDGET_UPDATE" />
</intent-filter>
<meta-data
android:name="android.appwidget.provider"
android:resource="@xml/widgetprovider" />
</receiver>
</application>
【问题讨论】:
-
首先,你得到的异常是什么?
-
消息是“很遗憾,A_Widget 已停止。”但小部件将添加到主屏幕。
标签: android button android-widget widget toast