今天在一个activityA里 用intent传值给另一个activityB,结果没get到。
不知是否是因为加了singleTask的原因,导致每次都不传新的intent过去,
而被启动的actB只能每次在用旧的。
后来只能用广播传值
接收方:
不知是否是因为加了singleTask的原因,导致每次都不传新的intent过去,
而被启动的actB只能每次在用旧的。
后来只能用广播传值
Intent intent = new Intent("Rec.Broadcast");
sendBroadcast(intent);
接收方:
// 实例化自定义的 BroadcastReceiver
receiver = new UpdateReceiver();
IntentFilter filter = new IntentFilter();
// 为 BroadcastReceiver 指定 action ,使之用于接收同 action 的广播
filter.addAction("Rec.Broadcast");
// 以编程方式注册 BroadcastReceiver 。配置方式注册 BroadcastReceiver 的例子见 AndroidManifest.xml 文件
// 一般在 OnStart 时注册,在 OnStop 时取消注册
this.registerReceiver(receiver, filter);
// this.unregisterReceiver(receiver);
private UpdateReceiver receiver;
// 实现一个 BroadcastReceiver,用于接收指定的 Broadcast
public class UpdateReceiver extends BroadcastReceiver{
@Override
public void onReceive(Context context, Intent intent) {
Log.v(TAG, "BroadcastReceiver");
tabHost.setCurrentTab(2);
}
}