如何从 Android 中的堆栈 activity 获取当前 activity

how to get current activity from stack activity in Android

我想从 activity 堆栈获取当前 activity 并替换为 ??????

dialog =new AlertDialog.Builder(??????,android.R.style.Theme_Material_Dialog_Alert).setTitle("Tittle").setMessage("Message");`

我该怎么做?

更新 1 :

我不能使用 getContext()getActivty 因为它们 return null

我也找到这个

ActivityManager am =(ActivityManager)context.getSystemService(Context.ACTIVITY_SERVICE);

ComponentName cn = am.getRunningTasks(1).get(0).topActivity;

我不知道如何使用 cn 转换为 contextActivity ?

请帮帮我!!!

试试这个

Context context;
@Override
public void onAttach(Context context) {
    super.onAttach(context);
    this.context = context;
}

然后

dialog =new AlertDialog.Builder(context,android.R.style.Theme_Material_Dialog_Alert).setTitle("Tittle").setMessage("Message");`