例如,为VideoView添加双击侦听器。我希望它支持以下代码:
//Player.kt
var vv = findViewById(R.id.player) as VideoView
vv.onDoubleClick {
// do something
}
我希望它支持以下代码:
...
您在此处显示的语法很可能受到 Anko 库的启发,该库具有一些扩展函数,允许您以这种漂亮的方式添加View
侦听器:
button.onClick {
Toast.makeText(this, "Hi there!", Toast.LENGTH_SHORT);
}
而不是冗长的 Java 语法:
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(this, "Hi there!", Toast.LENGTH_LONG).show();
}
});
不幸的是,Anko 没有onDoubleClick
扩展函数(好吧,View
也没有setOnDoubleClickListener()
方法)。如果要向视图添加双击支持,则需要使用手势检测器。而且,如果您希望在扩展函数的帮助下编写此代码,例如在 Anko 中,可以在此处找到文档。