【问题标题】:Android EditText onTouch EventAndroid EditText onTouch 事件
【发布时间】:2013-01-18 10:27:04
【问题描述】:

我有这样的布局:

家长:RelativeLayoutonTouchListener

孩子:EditText女巫比赛RelativeLayout

所以,EditText 填充了RelativeLayout。我现在不想在EditText 中插入/允许输入。我的目标是触发布局的onTouchListener。但它不会火。 我为EditText 尝试了不同的选项:

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

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

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

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

也许有人可以帮助我。

【问题讨论】:

    标签: android android-edittext touch-event


    【解决方案1】:

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

    【讨论】:

      【解决方案2】:

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

           yourEditText.setEnabled(false);
      

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

      或覆盖 OnTouchListener:

           yourEditText.setOnTouchListener(new OnTouchListener(){
      
                       @override
                       public boolean onTouch(){
      
                       }
             });
      

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

      【讨论】:

        猜你喜欢
        • 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
        相关资源
        最近更新 更多