【发布时间】:2017-02-23 10:43:29
【问题描述】:
我创建了一个活动,它启动一个广播接收器,广播接收器启动另一个活动。第二个活动只有一个TextView,我为第二个活动定义了一个透明背景。
但是活动在第一个活动上打开,并显示黑色背景,而不是背景中的第一个活动。
请指导我如何实现警报对话框,因为我想显示来自广播接收器的警报对话框,所以这是我发现的唯一可能的方法。
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Intent intent = new Intent();
intent.setAction("com.myapp.serviceIntent");
sendBroadcast(intent);
广播
public class MyReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Toast.makeText(context, "Intent Detected.", Toast.LENGTH_LONG).show();
Intent i= new Intent(context.getApplicationContext(), AlertActivity.class);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(i);
}
【问题讨论】:
-
您可以显示来自接收者的
AlertDialog。你试过了吗? -
是的,我试过了,但失败了
-
你为什么不使用对话框呢!只需传递活动的上下文并使用它
标签: android performance android-layout android-fragments broadcastreceiver