今天遇到一個(gè)問題,在非Activity里面顯示Dialog對(duì)話框,當(dāng)然可以將Activity的引用傳進(jìn)去,但如果你不方便獲取到當(dāng)前的Activity或者不在Activity里面,使用Application的context時(shí) ,如果你按照原來在Activity里面顯示Dialog的寫法可能就會(huì)遇到問題了,會(huì)報(bào)錯(cuò)。這時(shí)你可以這樣寫。
public class App extends Application{
@Override
public voidonCreate() {
super.onCreate();
AlertDialog.Builderbuilder=newAlertDialog.Builder(getApplicationContext());
builder.setTitle(" i am title");
builder.setView(R.layout.content);
Dialogdialog=builder.create();
dialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);
dialog.show();
}
}
但要注意的是要加上android.permission.SYSTEM_ALERT_WINDOW 權(quán)限。
這樣的顯示出來的對(duì)話框早于Activity之前就創(chuàng)建出來了。
?
工作記錄。