-1

我有这样的布局:

家长:RelativeLayoutonTouchListener

孩子:EditText女巫比赛RelativeLayout

因此,EditText填充RelativeLayout. 我现在不想在EditText. 我的目标是触发onTouchListener布局。但它不会火。我尝试了不同的选项EditText

  1. setEditable(false)setFocusable(false) -> 好的,所以没有输入,但也没有onTouch()

  2. setOnTouchListener(new OnTouchListener){return false}); -> 据我了解,这应该与选项 1 结合使用。但仍然不能TouchEventRelativeLayout.

TextViews工作没有问题,但我认为这是因为他们不使用onTouchoder onClick。我该怎么做才能使 EditViews(或拦截 touchEvents 的视图)不拦截 touchEvent?

为什么这一切:我想RelativeLayout在用户触摸它时移动它。只要我不将与父母匹配的孩子放入其中,这就可以正常工作。

也许有人可以帮助我。

4

2 回答 2

1

您应该覆盖 EditText 的 onTouchEvent 方法并返回 false。它对我有用!

于 2015-08-26T09:25:15.447 回答
-1

如果没有看到一些代码,很难给出一个很好的例子。你可以这样做:

     yourEditText.setEnabled(false);

并在需要时启用它(setEnabled(true);)

或覆盖 OnTouchListener:

     yourEditText.setOnTouchListener(new OnTouchListener(){

                 @override
                 public boolean onTouch(){

                 }
       });

不要在 onTouch() 之外写任何东西。但这意味着永远不会发生任何事情,即使您需要它。

于 2013-01-18T10:34:48.270 回答