监听器
之前很不明白为什么实现监听器的时候会是如下的写法:
import android.view.View;
public class Test extends Activity{
@Override protected void onCreate(Bundle icicle) {
super.onCreate(icicle);
final Button button = new Button(this);
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// 点击事件处理 }
});
}
}
一直把OnClickListener当作View的一个子类,还想为什么一定要用View.的形式呢?我已经import了啊,突然才反应过来,这是View里面的一个接口啊,直接使用接口就找不到是哪个接口了。
用匿名内部类的形式实现的了一个监听接口,onClick只是接口中定义的一个方法,传入的View v是所要监听的View。
.xxx .xxx
昨天写activity的时候,看见一个这样的写法:
return new AlertDialog.Builder(getActivity())
.setView(v)
.setTitle(R.string.date_picker_title)
.setPositiveButton(android.R.string.ok, null)
.create();
我琢磨这一连串的....都是什么?JAVA神之技巧么?后来一琢磨,原来后面的四个方法都连续返回一个对象,通过连续三个参数的传入,最后create()一个拥有三个参数的对象,当然,如果显示器够宽的话,写成一行就不会遇见这种脑抽问题了。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。