如何在Java 8中为异步类启用Android Studio / IDEA闭包折叠?

我非常喜欢 Android Studio的匿名类代码折叠:

new AsyncTask<Void,Void,Void>() {
    @Override
    protected Void doInBackground(Void... params) {
        doSomething();
        return null;
    }
}.execute();

(AsyncTask) (params) -> {
    doSomething()
}.execute();

此折叠选项位于设置中的“闭包”下.我切换到Java 8(使用retrolambda),因为我想使用lambda表达式,但是现在Android Studio不会折叠匿名类.有没有办法重新启用它?

附:
我知道我可以留在Java 7,Android Studio会将单方法匿名类折叠成lambda表达式,但我希望能够直接输入lambda表达式,同时仍然可以折叠多方法匿名类.

解决方法

首先,您需要在项目结构中将JDK位置设置为java 8 – > SDK位置

现在Android Studio 2.1不支持java 8的lambda表示法,但有解决方法.

>您需要启用Jack编译器才能支持功能>添加    android {      jackOptions {        启用为真      }   }在build.gradle文件中>它还需要Android Sdk Build-tools 24或更高版本.在sdk manager下载该开放式独立SDK管理器并下载

相关文章

这篇文章主要介绍了idea中mapper快速跳转到xml插件的方法,具...
今天小编给大家分享的是IDEA搭建Maven模块化项目的实现方法,...
这篇文章主要介绍了ideaintellij怎么快速修复if语句缺少大括...
这篇文章主要介绍“idea运行main方法或Test避免编译整个应用...
这篇文章主要介绍“idea项目全局去掉严格的语法校验方式是什...
本文小编为大家详细介绍“Windows、IDEA、VSCode常用快捷键有...