gpt4 book ai didi

Android setOnTouchListener 无法在 fragment 中工作

转载 作者:行者123 更新时间:2023-11-30 02:49:52 25 4
gpt4 key购买 nike

我正在尝试控制 fragment 中的 OnTouchListener(上下)。我实现了 setOnTouchListener 方法,但它不起作用。

我只想在发生向上触摸时显示“向上”Toast,或在发生向下触摸时显示“向下”Toast。

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {

View rootView = inflater.inflate(R.layout.strada_chefs_1, container,
false);

rootView.setOnTouchListener(new OnTouchListener() {

@Override
public boolean onTouch(View v, MotionEvent event) {
switch (MotionEventCompat.getActionMasked(event)) {

case MotionEvent.ACTION_UP:
Toast.makeText(getActivity(), "Up", Toast.LENGTH_SHORT)
.show();
break;

case MotionEvent.ACTION_DOWN:
Toast.makeText(getActivity(), "down", Toast.LENGTH_SHORT)
.show();
break;

default:
break;
}
return false;
}
});

最佳答案

尝试在 onTouch 回调中返回 true。如果您返回 false,则意味着该事件应该由其他人处理。 OnTouch 事件包含向下 - 移动 - 向上,如果 OnTouchListener 在任何时候返回 false,则事件的其余部分将在别处处理,而不是由你的 OnTouchListener。您的代码收到 ACTION_DOWN,但由于它返回 false,事件的其余部分将在别处处理。

关于Android setOnTouchListener 无法在 fragment 中工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24382976/

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