在android studio中使用lambda

Lambda表达式是在JDK 8中开始支持的一种函数式推导语言,能够大量减少匿名内部类那种冗余的代码。在Android中,可以大量使用在设置监听,设置异步回调等场景。

Android Studio目前的版本还没有直接支持Lambda表达式的支持,需要插件支持,当然,JDK版本也必须使用JDK 8 或者以上(当然过些时间会有更高版本的JDK)。

  • 1.引入retrolambda插件:

在Project的build.gradle中添加

apply plugin: ‘me.tatarka.retrolambda‘
  • 2.设置编译选项(可能也可以不写)

在Project的build.gradle的android节点中添加如下代码

compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
}
  • 3.引入retrolambda的类路径,在Module:app的build.gradle中的buildscript->dependencies节点中添加如下代码

      classpath ‘me.tatarka:gradle-retrolambda:3.2.0‘
    
  • 4.对build.gradle进行build

  • 5.编写测试代码,简单写法如下

    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    textView = (TextView)findViewById(R.id.text);
    textView.setOnClickListener( v -> Toast.makeText(getApplicationContext(), "Lambda", Toast.LENGTH_LONG).show());
    }
      6.运行查看是否正常

你可能感兴趣的:(在android studio中使用lambda)