Android:长按动作按钮

时间:2013-11-01 11:55:30

标签: android button action

我想在操作栏按钮上触发两个不同的功能:一个在“点击”上,另一个在“长按”上。举个例子,它应该像汽车收音机一样工作。您可以在长按时存储无线电频道的频率,并在短按时调用它。

问题是,您在操作按钮上没有真正的自定义侦听器。谷歌给出了:

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    // Handle presses on the action bar items
    switch (item.getItemId()) {
        case R.id.action_search:
            openSearch();
            return true;
        case R.id.action_compose:
            composeMessage();
            return true;
        default:
            return super.onOptionsItemSelected(item);
    }
}

是否有可能长时间呼叫听众?

2 个答案:

答案 0 :(得分:1)

您要找的是OnLongClickListener。要知道它必须返回一个布尔值,意味着它执行了LongClick或不执行。

您需要在同一个Button对象上添加两个Listener:

button.setOnClickListener(new OnClickListener() { ... });
button.setOnLongClickListener(new OnLongClickListener() { ... });

答案 1 :(得分:0)

您可以为操作栏创建自定义视图,并在自定义视图上实施onLongClick