我在onReceive方法里为一个成员变量重新赋值,通过控制台输出发现根本不能修改它的值,这是什么原因。这个Widget就是一个ImageView,显示的是一个开关的图片,我想让它在被点击的时候,开和关这两幅图交替显示,怎么做啊?新手求指导

解决方案 »

  1.   

    直接在onreceive中修改那个imageview的图片就行了  修改方法是
    RemoteViews remoteViews=new RemoteViews(context.getPackageName(), R.layout.widget);
    remoteViews.setImageViewResource(R.id.image, R.drawable.pic1);
    final AppWidgetManager gm = AppWidgetManager.getInstance(context);
            if (ids != null) {
                gm.updateAppWidget(ids, remoteViews);
            } else {
                gm.updateAppWidget(new ComponentName(context, this.getClass()), remoteViews);
            }
      

  2.   


    这个我知道我是说
    默认显示的是图A
    点击后显示图B
    再点击显示图A
    如此交替