所以,我有个问题!
我有一个名为x的活动。当用户单击按钮时,将显示活动y。
我希望在收到活动x发送的事件后可以关闭此活动。
你知道我该怎么做吗?
最佳答案
从x发送aBroadcastMessage
。在y寄存器aBroadcastReceiver
中使用相同的IntentFilter
。因此,从x可以发送预定义的退出消息,该消息将被y活动的onReceive
方法捕获。在那里你可以结束活动y。
例如:
在Y活动中
private BroadcastReceiver mMessageReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
Bundle extras = intent.getExtras();
if (extras != null) {
if (extras.containsKey("exit")) {
finish();
}
}
}
别忘了登记收信人
registerReceiver(
mMessageReceiver,
new IntentFilter(Constants.YOUR_INTENT_FILTER));
并注销
unregisterReceiver( mMessageReceiver);
在X活动中:
send the broadcastmessage using `sendBroadcast(Intent i)`
对于这种内部消息,我更喜欢LocalBoradcastManager
关于android - Android-与其他 Activity 互动,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16039271/