我有一个非常简单的小部件应用程序,它包含一个LinearLayout带背景和一个ImageButton.
在该AppWidgetProvider onUpdate()方法中,我注册按钮的单击以广播意图.当小部件首次加载时,一切运行正常并且捕获点击.旋转屏幕时会出现问题,即使屏幕向后旋转,也不会再次捕获点击.
屏幕旋转时,如何重新注册咔嗒声?
下面是我正在使用的一些代码段.
的AppWidgetProvider
@Override
public void onReceive(Context context, Intent intent)
{
super.onReceive(context, intent);
if(intent.getAction().equals("test.CLICK"))
{
CallTestMethod(context);
}
}
@Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager,
int[] appWidgetIds) {
final int N = appWidgetIds.length;
// Perform this loop procedure for each App Widget that belongs to this provider
for (int i=0; i<N; i++) {
int appWidgetId = appWidgetIds[i];
RemoteViews views=new RemoteViews(context.getPackageName(), R.layout.widget);
Intent clickintent=new Intent("test.CLICK");
PendingIntent pendingIntentClick=PendingIntent.getBroadcast(context, 0, clickintent, PendingIntent.FLAG_UPDATE_CURRENT);
views.setOnClickPendingIntent(R.id.change_mode, pendingIntentClick); …Run Code Online (Sandbox Code Playgroud)