我正在从我想要显示对话框的地方获得服务。
public class MyService extends Service {
private AlertDialog.Builder dialog;
private View formView;
@Override
public void onCreate(){
super.onCreate();
formView = LayoutInflater.from(this).inflate(R.layout.my_widget, null);
dialog = new AlertDialog.Builder(this);
dialog.setView(formView);
// some more code
}
public void onClick() {
dialog.show();
}
}
现在我知道用this
取代MyActivity.this
已经解决了这个问题,但由于这是服务,我无法访问它。它给了我这个错误:com....MainActivity is not an enclosing class
此外,我在清单文件中添加了<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
。