为什么 我的广播发送之后,在另一个类里面没有接收到呢?
下面是login发送的广播
public static final String ACTION_LOGIN_SUCCESS = "ACTION_LOGIN_SUCCESS";
Toast.makeText(LoginAc.this, "登录成功!", Toast.LENGTH_SHORT).show();
//广播发送用户名
Intent intent = new Intent();
intent.setAction(ACTION_LOGIN_SUCCESS);
sendBroadcast(intent);
// 如果登录成功
setResult(Activity.RESULT_OK);
finish();
这个finish()就是会返回到上一层,上一层,就是没有接收到广播
这是广播接收者类
//广播接收者
private BroadcastReceiver receiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
//如果 login成功
if (intent != null || "".equals(intent)) {
String loginSuccess = intent.getStringExtra(LoginAc.ACTION_LOGIN_SUCCESS);
if(loginSuccess != null){
btn_exit_app = (TextView) findViewById(R.id.btn_exit_app);
btn_exit_app.setText("退出登录");
btn_exit_app.setTextColor(getResources().getColor(R.color.color_white));
btn_exit_app.setWidth(500);
}
}
}
};
从外层进入到广播接收者类,是有经过 onCreate()方法的,有刷新,那 那个想要设置的TextView的文字 可以显示,就是在登录后,发送了广播 ,这里没有接收到。怎么回事呢?