我有一个我正在尝试构建的小部件,它只包含一个按钮。我想要做的是单击按钮,然后运行一些简单的代码(在我的测试中它是一个 toast 警报)。它最初似乎工作正常,但突然按钮停止响应点击。电话休眠后,我一直注意到它。这是我的 AppWidgetProvider 代码。
更新时:
for (int appWidgetId : appWidgetIds) {
RemoteViews remoteView = new RemoteViews(context.getPackageName(), R.layout.my_widget);
Intent intent = new Intent(context, MyNewWidgetProvider.class);
intent.setAction("MyCode");
PendingIntent pendingIntent = PendingIntent.getBroadcast(context, 0, intent, 0);
remoteView.setOnClickPendingIntent(R.id.my_btn, pendingIntent);
AppWidgetManager.getInstance(context).updateAppWidget(appWidgetId, remoteView);
}
接收时:
super.onReceive(context, intent);
if (intent.getAction().equals("MyCode")) {
Toast toast = Toast.makeText(context, "It worked", Toast.LENGTH_SHORT);
toast.show();
}
我很困惑,所以如果有人能帮助我指出正确的方向,我将不胜感激。就像我说的那样,在手机休眠一两分钟之前,它工作正常,然后它完全停止响应点击。
谢谢!
最佳答案
待定 Intent 在每次使用后都会被“销毁”。您需要重新设置它。或者等待小部件刷新,然后它也会发生,但这可能不是理想的方式。
关于android - AppWidget 按钮 onClick 停止工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5851634/