繁体   English   中英

AlarmManager唤醒时更改ImageView资源

[英]Change ImageView Resource when alarmManager wakes up

我的活动中有一个ImageView,当激活服务时它会显示“活动”符号。 服务执行后,ImageView应该返回到“非活动”符号。

启动服务的AlarManager:

    context = this;
    Intent intent = new Intent(context, AlarmReceiver.class);
            sender = PendingIntent.getBroadcast(context, INTENT_CODE, intent,
                    PendingIntent.FLAG_UPDATE_CURRENT);
            am = (AlarmManager) getSystemService(ALARM_SERVICE);
            am.set(AlarmManager.RTC_WAKEUP, calNew.getTimeInMillis(), sender);
setImage(active);

警报管理器:

@Override
    public void onReceive(Context context, Intent intent) {

        Intent wakeupIntent = new Intent(context, WakeupActivity.class);
        context.startService(wakeupIntent);

    }

服务执行后,如何使映像变回非活动状态? 我试图创建一个新的Runnable,然后使用一个处理程序来postDelayed(runnable,calNew.getTimeInMillis())。 实际上它没有用,什么也没发生。 有一个更好的方法吗?

服务执行后,如何使映像变回非活动状态?

步骤1:将Android支持包添加到您的应用中。

步骤2:让您的活动在onResume()LocalBroadcastManager注册一个BroadcastReceiver ,并在onPause()取消注册。

步骤#3:让服务完成工作后,通过LocalBroadcastManager发送广播,以供活动的BroadcastReceiver

这是一个演示此技术的示例项目

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM