1

我只想知道为什么android在我们写的时候会报错

AlertDialog.Builder builder = new AlertDialog.Builder(getApplicationContext());

是否正确。以及为什么它仅在我们this作为参数时才有效。

AlertDialog.Builder builder = new AlertDialog.Builder(this);
4

1 回答 1

3

Application是一个全局对象,它的Context. 应用程序上下文应仅用于需要Context不与当前运行的组件绑定的事物,例如Activity.

在这种情况下,AlertDialog是在Activity(我假设的)内部创建的,它只需要那个上下文Activity- 因此你应该使用this. 理由是AlertDialog在其父级之外没有生命Activity

于 2012-09-18T05:49:18.667 回答