2017-04-10 18 views
2

어쨌든 main/ui 스레드에서 버튼 클릭과 같은 UIevents에서 수신 대기 중입니까? 각 UI의 콜백 (예 : onClickListener)에서 직접 상호 작용하지 않고도?MainThread (UI Thread)에서 UI 이벤트 듣기 및 이벤트를 트리거하는보기

난 그냥, 나는 주위를 파고 봤는데이 UI 이벤트에서 발사 어떤 일을 듣고 싶어하지만 난 단지 게시물 메시지 다른 스레드에서 UI 스레드에가, 내가 원하는 것은 단지 무언가를 찾아 이것은 중복으로 표시 될 경우 예를 들어 버튼을 클릭했을 때, 나는이 이미 질문 할 수 있으리라 믿고있어

findViewById(R.id.button_1).setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View v) { 

      // some button click stuffs here 
     } 
    }); 

    // this is where I want to listen from ui events (e.g click), 
    // and determine what type of view that triggered that event 
    // or how to get the actual view object that triggered it 

를 UI 스레드에을 듣고 (그것은 잘 될 것입니다,하지만 관련 포스트 만약을 제공하십시오 거기에있다 /), 내가 "메인 스레드를 듣고"같은 것을 검색하려고 할 때마다, 무엇이 필요한지, 어떤 도움을 주시면 감사하겠습니다.

편집 : 현재 상황은 기존 코드와 상호 작용할 방법이 없기 때문에 별도의 모듈/라이브러리를 통해 실제 코드를 건드리지 않고 해당 UI 이벤트를 수신 대기하는 방법을 찾고 있습니다. 이 달성 할 수있는 경우), 나는 잘 모릅니다하지만

enter image description here

+0

를 할 수 사용하는 것이 할 수있는 직접적인 방법이 없다고 생각 당신의 목적이 무엇인지 정교하게 만드십시오. – mpals

+0

미안 나는 방금 왜 해야할지에 대한 나의 목표와 관련하여 내 질문을 편집했다. – Robert

답변

0

난 당신이 외부를 처리하는 경우를 처리기

+0

예 핸들러에 관한 내용을 읽고 있었지만 루퍼는 모든 코드를 보았다. handler.post) 그래서 이벤트가 트리거됩니다, 항상 양방향 상호 작용, 나는 단방향이 필요합니다. 의사 설명은 이와 같을 수 있습니다 (UI 스레드에서 핸들러를 연결 한 다음, 무엇을 또는 ​​무엇을들을 수 있습니다.) UI 스레드가 실행되는 메시지) – Robert