1

我在 Sherlock 活动的 onClick 方法中努力让 AlertDialog 工作。这是我的代码。

AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Ooops!!");
builder.setMessage("Sorry.");
builder.setPositiveButton("OK", null);
AlertDialog dialog =builder.create();
dialog.show();

new AlertDialog.Builder(this)的问题出在哪里。This被强调为错误,我也尝试过getActivity()这在 Sherlock 中很常见,但没有运气。有什么想法或方向吗?

4

3 回答 3

1

替换这个

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

经过

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

我猜你AlertDialog.Builder(this)onClick你的活动中使用,在这种情况下它不引用活动上下文。因此,使用ActivityName.thiswhere ActivityName 是您的 Activity 的名称。

于 2013-11-08T19:00:32.093 回答
0

如果此代码位于 中Activity,则使用 [activity-name].this 来引用该Activity

于 2013-11-08T19:00:14.050 回答
0

如果您使用 ActionBarSherlock,您很可能总是使用“getSherlockActivity()”代替“getActivity()”

我们在几乎所有应用程序中都使用 ABS 来提供旧版支持。让我知道它是否有效。

于 2013-11-08T19:04:21.747 回答