2012-07-11 4 views
0

하나의 탭 아래에서 여러 활동 사이를 탐색하는 데 활동 그룹을 사용하고 있습니다.Android SDK : 활동 그룹 onBackButtonPressed가 작동하지 않습니다.

그러나 내가 다시 나는 다음과 같은 오류가 점점 오전 첫 번째 자식 활동과 언론에 도착할 때 :

@Override 
    public void onBackPressed() 
    { 
     int length = idList.size(); 
     if (length > 1) 
     { 
      Activity current = getLocalActivityManager().getActivity(
       idList.get(length -1)); 
      //Log.i("CURRENT ACTIVITY =","CURRENT ACTIVITY "+current.getClass().getName()); 
      current.onBackPressed(); 

     } 
    } 

I 설치 IDLIST과 :

java.lang.NullPointerException at com.android.TopActivity.onBackPressed(TopActivity.java:208) at android.app.Activity.onKeyUp(Activity.java:1904)

이 그것을에 충돌 년대 방법이다 다음 :

idList.add("HomeActivity"); 
    idList.add("TopActivity"); 

TopActivity cla에서 onBackPressed 메서드를 호출하려고합니다. 하지만 그것은 계속 충돌합니다. 내가 뭘 잘못하고 있니? idList에 올바른 값을 넣고 있습니까?

답변

1

당신의 설명에서 말하기 어렵지만, 당신이 더 나은이되는 플랫폼 버전을 대상으로하는 가정 (조각하여 설계를 구현하여 제공 될 수 같은 소리 적절한 지원 라이브러리).

그렇다면 어떤 유형의 ID 스택을 유지하려고 시도하는 대신 getLocalActivityManager().getCurrentActivity()을 사용하는 것은 어떻습니까? 어쨌든 언론에 다시 언론을 보내려는 것 같습니다.

0

는 시도이 :

super.onBackPressed(); 
+0

나는 그것을 시험해 보았다. 아직 운이 없다. – user1417302

+0

는 무엇을 시험해 볼 수 있니? – AkashG

0
@Override 
public boolean onKeyDown(int keyCode, KeyEvent event) { 
    if (keyCode == KeyEvent.KEYCODE_BACK) { 
     //your code goes here 
    } 
    return super.onKeyDown(keyCode, event); 
} 
관련 문제