2014-12-15 2 views
0

는 곳이다 이벤트의 결과 전파를 받았다? 감사NavigationDrawer 및 KeyEvent를 전파

+0

이 경우 키 이벤트를 사용하지만 false를 반환합니다. 그래서 일부 부모 클래스는 여전히 키 이벤트를 사용할 수 있습니다. 이것은 응용 프로그램에서 많은 부작용을 일으킬 수 있습니다. 나는 네가 사실로 돌아 가야한다고 생각해. 당신은 super.onKeyDown을 호출하지 않습니다. 따라서 true를 반환해도 응용 프로그램이 돌아 가지 않습니다. – Adem

+0

감사합니다.이 경우 true 또는 false를 반환하는 것이 동일한 효과를 갖는 것을 볼 수 있습니다. 그렇다면 클래스 액티비티의 부모가 될 수있는 것은 무엇입니까? – GPack

+0

상위 클래스 또는 일부 관찰자 클래스 예를 들어 액티비티는 스크롤 뷰를 가질 수 있으며 false를 반환하면 액티비티는이 키를 스크롤 뷰에 보냅니다. 이벤트를 사용할 때마다 "참"을 반환해야하며 다른 (부모 또는 형제) 객체는이 이벤트를 더 이상 사용하지 않습니다. – Adem

답변

0

안녕 GPack 내 응용 프로그램에서 동일한 작업을 수행, 관리 제어를위한 keycode_back 약간의 탐색 서랍하지만이 같은 다른 코드를 사용

public boolean onKeyDown(int keyCode, KeyEvent event) 
{ 
    //Control Navigation 
    //Floors level 
    if(keyCode == KeyEvent.KEYCODE_BACK && ActualFragment == 0) 
    { 
     if(drawerMenu.isDrawerOpen(Gravity.LEFT)){ 
      drawerMenu.closeDrawers(); 
     } 
     else{ 
      RemoveAndReplaceFragment_ToFloors(getFragmentManager()); 
      this.moveTaskToBack(true); 
     } 

     return true; 
    } 

    return false; 
} 

나는 당신이 필요로하는의이 생각합니다. .. 만일 당신이 더 많은 도움 또는 필요 물이라면 나에게 충고해라!! 행운을 빌어 요 GPack!

+0

고맙지 만 문제는 다음과 같습니다. _onKeyDown_에서 _false_를 반환하는 결과 전파가 어디서 수신됩니까? – GPack