Android 匿名类可以替换为lambda提示

Android 匿名类可以替换为lambda提示,android,android-studio,lambda,Android,Android Studio,Lambda,我使用此库构建对话框: 我得到了这个暗示 匿名new MaterialDialog.SingleButtonCallback()可以替换为lambda提示 自从Android Studio 2.4 prev 4更新以来,它向我显示了以下问题: 代码如下: public void swapConfirm() { MaterialDialog dialog = new MaterialDialog.Builder(this) .title(R.string.swap

我使用此库构建对话框:

我得到了这个暗示

匿名new MaterialDialog.SingleButtonCallback()可以替换为lambda提示

自从Android Studio 2.4 prev 4更新以来,它向我显示了以下问题:

代码如下:

public void swapConfirm() {
    MaterialDialog dialog = new MaterialDialog.Builder(this)
            .title(R.string.swap_teams)
            .content(R.string.swap_confirm)
            .positiveText(R.string.swap_teams)
            .negativeText(android.R.string.cancel)
            .onPositive(new MaterialDialog.SingleButtonCallback() {
                @Override
                public void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) {
                    swapTeams("");
                }
            }).build();
    dialog.show();
}
如何将其更改为新的lambda模式


我根据尝试了以下操作,但不起作用:

因为错误显示变量
dialog
已在范围中定义。例如,将其名称更改为类似
dialog1
,它应该可以工作


如果您让Android Studio通过单击
Alt+Enter
将匿名类转换为lambda,并从意向列表中选择第一个选项,则不会发生此错误。

Android Studio仍然显示lambda问题:可能是因为它仍在预览中。这不是Android Studio从IntelliJ idea继承的只要提示一下,当lambda在一行中时,您可以删除花括号。这里的花括号是可选的