【问题标题】:How to set my motion listener for exist view [closed]如何为存在视图设置我的运动监听器[关闭]
【发布时间】:2016-01-17 04:53:06
【问题描述】:

例如,为 VideoView 添加双击监听器。我希望它支持以下代码:

//Player.kt
var vv = findViewById(R.id.player) as VideoView
vv.onDoubleClick {
  // do something
}

【问题讨论】:

  • 您是否检查过此代码在 IDE 中工作?它奏效了吗?这里看不出问题。请澄清您的要求。
  • @voddan,代码没问题,我只想知道如何自定义视图监听器
  • 对不起,我还是没关注你。你能修改一下问题吗?
  • 你想做什么?你试过什么(代码)?您需要帮助的结果有什么问题?您是否收到特定错误?

标签: android android-layout kotlin


【解决方案1】:

我希望它支持以下代码:
...

您在此处显示的语法很可能受到 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() 方法)。如果你想为你的视图添加双击支持,你需要使用GestureDetectors。而且,如果您希望借助扩展功能编写此代码,例如在 Anko 中,可以在 here 找到文档。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多