gpt4 book ai didi

android - 如何使用 View.OnTouchListener 而不是 onClick

转载 作者:IT王子 更新时间:2023-10-28 23:58:56 29 4
gpt4 key购买 nike

我正在为客户开发一个 Android 2.2.2 应用程序,他想做以下事情:

现在我有一个带有 onClick 事件的按钮,但他不喜欢,他想检测用户何时释放按钮。

我找到了View.OnTouchListener我认为这是我需要使用的,但是,是否可以像使用 onClick 一样将此事件添加到 xml?

<ImageButton
android:id="@+id/btnSaveNewGate"
android:layout_width="@dimen/btnSaveNewGate_width"
android:layout_height="@dimen/btnSaveNewGate_height"
android:layout_below="@+id/radioGrGateType"
android:layout_centerHorizontal="true"
android:layout_marginTop="@dimen/btnSaveNewGate_marginTop"
android:background="@null"
android:contentDescription="@string/layout_empty"
android:onClick="onSaveNewGateClick"
android:scaleType="fitXY"
android:src="@drawable/save_gate_selector" />

我还有两个问题:

用户松开手指时关联的事件是什么?

是否有任何准则禁止使用 View.OnTouchListener 代替 onClick

最佳答案

用户松开手指的事件是MotionEvent.ACTION_UP。我不知道是否有任何准则禁止使用 View.OnTouchListener 而不是 onClick(),很可能取决于具体情况。

这是一个示例代码:

imageButton.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if(event.getAction() == MotionEvent.ACTION_UP){

// Do what you want
return true;
}
return false;
}
});

关于android - 如何使用 View.OnTouchListener 而不是 onClick,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11690504/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com