JIAN_BOY_RISE 2016-07-16 07:13 采纳率: 37.5%
浏览 997

安卓与广播有关的一个小问题

package com.example.broadcastbestpractice;

import android.app.AlertDialog;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;
import android.content.Intent;
import android.view.WindowManager;

public class ForceOfflineReceiver extends BroadcastReceiver {

public void onReceive(final Context context, Intent intent) {
    // TODO Auto-generated method stub
    AlertDialog.Builder dialogBuilder=new AlertDialog.Builder(context);
    dialogBuilder.setTitle("Warning");
    dialogBuilder.setMessage("你被强制下线了,请重新登录!!");
    dialogBuilder.setCancelable(false);
    dialogBuilder.setPositiveButton("OK",new OnClickListener() {


        public void onClick(DialogInterface dialog, int which) {
            // TODO Auto-generated method stub
            ActivityCollector.finishAll();
            Intent intent=new Intent(context,LoginActivity.class);
            intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);   
            context.startActivity(intent);                    //为什么要调用context来启动呢?

        }
    });
    AlertDialog alertDialog=dialogBuilder.create();
    alertDialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);
    alertDialog.show();

}

}
就是后面为什么要通过context.startActivity(intent); 来启动活动呢?为什么不可以直接通过startActivity(intent)来启动,原因是什么?

  • 写回答

1条回答 默认 最新

  • 猫啸山林 2016-07-16 08:25
    关注

    点击事件里边的方法体,属于OnClickListener对象,引用不了activity里边的startActivity方法

    评论

报告相同问题?

悬赏问题

  • ¥15 zynq烧写程序到flash后不运行
  • ¥15 在ECharts中绘制饼图及环形图(图表)
  • ¥15 (标签-51单片机|关键词-#include)
  • ¥15 裸板ESD问题的思考与实验
  • ¥15 electron+python
  • ¥50 远程调试PLC的解决方案的问题
  • ¥15 微信收付通中,自动分账的情况下,某一接收方分账失败了系统会自动在发起重新分账吗
  • ¥15 宝塔ssl证书一直待待验证
  • ¥15 相近语义 不同表达 匹配
  • ¥15 [vasp+phonopy]表面模型的间隙扩散系数中尝试频率如何用声子频率计算