5

匿名クラスの Android Studio のコード フォールディングが本当に気に入っています。

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

の中へ

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

この折りたたみオプションは、設定の「クロージャー」の下にあります。ラムダ式を使用したかったので、Java 8 (retrolambda を使用) に切り替えましたが、現在、Android Studio は匿名クラスをフォールドしません。再度有効にする方法はありますか?

PS私はJava 7にとどまることができ、Android Studioは単一メソッドの匿名クラスをラムダ式に折りたたむことができることを知っていますが、マルチメソッドの匿名クラスを折りたたんだまま、ラムダ式を直接入力できるようにしたいと考えています。

4

1 に答える 1

0

最初に、プロジェクト構造の下でJDKの場所をJava 8に設定する必要があります-> SDKの場所

現在、Android Studio 2.1 は Java 8 のラムダ表記をサポートしていませんが、回避策があります。

  1. この機能をサポートするには、Jack コンパイラを有効にする必要があります
  2. build.gradle ファイルに android { jackOptions { enabled true } } を追加します
  3. また、Android Sdk Build-tools 24 以降が必要です。その開いているスタンドアロン SDK マネージャーを SDK マネージャーの下にダウンロードしてダウンロードするには
于 2016-05-01T10:59:06.297 に答える