2013-01-18 3 views
-1

이 같은 레이아웃이 있습니다. 이제는 EditText에 입력을 허용하거나 허용하고 싶지 않습니다. 내 목표는 onTouchListener 레이아웃을 실행하는 것입니다. 그러나 그것은 발사되지 않습니다. -> OK, 그래서 아무 입력뿐만 아니라 어떤 onTouch()안드로이드 글고 onTouch 이벤트

  • setOnTouchListener(new OnTouchListener){return false}); - 나는 그것을 이해>는 지금까지,이해야

    1. setEditable(false)setFocusable(false) : 은 내가 EditText에 대한 다른 옵션을 시도 옵션 1과 함께 작동하지만 TouchEvent은 여전히 ​​RelativeLayout이 아닙니다.

    TextViews 아무 문제없이 작동하지만 난 그들이 onClick 데르 onTouch를 사용하지 않기 때문에 그것이라고 생각합니다. EditViews (또는 touchEvents를 가로채는 Views)가 touchEvent를 가로 채지 않는 것은 무엇입니까?

    이유 : 사용자가 터치 할 때 RelativeLayout으로 이동하고 싶습니다. 이것은 부모와 일치하는 아이를 그 안에 넣지 않는 한 잘 작동합니다.

    어쩌면 누군가 나를 도울 수 있습니다.

  • +1

    try setEnabled (false); – skygeek

    답변

    -1

    몇 가지 코드가 없어도 좋은 예를 보여주기가 어렵습니다.

     yourEditText.setEnabled(false); 
    

    을하고 필요한 경우 활성화()는, setEnabled (참)

    또는 OnTouchListener 오버라이드 (override) : 당신이 할 수있는

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

    안되는 onTouch iside입니다 아무것도 쓰기(). 그러나 이것은 당신이 그것을 필요로하더라도, 결코 아무 것도 일어나지 않을 것임을 의미합니다.

    1

    EditText의 onTouchEvent 메서드를 재정의하고 false를 반환해야합니다. 그것은 나를 위해 일했다!

    +0

    그것이 효과가있다. 감사 –