android 中的监听器与内部匿名类
16lz
2021-01-25
1,内部匿名类
在 java 中,内部匿名类就是没有名字的内部类。注意,内部匿名类有两个关键词,一个内部,一个是没有名字。其目的是为了简化代码的书写。使用内部匿名类主要的目的是为了简化代码的书写。
2,android 中监听器的实现
在平时写代码中,我们在使用按钮等控件的时候,经常会使用内部匿名类。这里我们以为 Button 为例子,代码如下:
mTrueButton = (Button) findViewById(R.id.true_button); mTrueButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { do(true); } });
可以看到,setOnClickLisener 中就使用了一个内部匿名类,并实现了 OnClickListener 这个接口中唯一的方法。我们也可以具体定义一个类,并实现 OnClickListener 接口,然后注册给 setOnClickLisener ,显然内部匿名类简化了代码。下面是 OnClickListener 这个接口,可以看到,android 中这个接口只有一个函数需要实现。
/** * Interface definition for a callback to be invoked when a view is clicked. */ public interface OnClickListener { /** * Called when a view has been clicked. * * @param v The view that was clicked. */ void onClick(View v); }
更多相关文章
- 没有一行代码,「2020 新冠肺炎记忆」这个项目却登上了 GitHub 中
- Android小项目之八 界面细节
- 拒绝ndk-build (Android(安卓)Native Development Kit)
- 10个经典的Android开源项目(线程,网络等学习不错)
- kotlin实现Android(安卓)MVP模式开发
- 使用NDK移植开源项目,JNI的使用技巧
- Android(安卓)ndk开发swig编译jni接口
- Android代码优化——使用Android(安卓)lint工具
- Android(安卓)Jni开发之Android(安卓)Studio中创建Jni程序