2012-06-07 3 views
0

피자 주문 앱을 만들고 있습니다. 사용자가 장바구니에 항목을 추가하면 항목 범주로 이동하고 새 항목을 찾아 보거나 추가 할 수있는 옵션이 제공됩니다. 내가하고 싶은 것입니다 :안드로이드에서 활동 스택을 지우는 방법?

메인 화면> CategoryList (첫 등장)> 해당 범주의 피자> 피자 세부 정보> 장바구니> CategoryList (초 겉 모양) ..

내가 그렇게 활동 스택을 지워야 장바구니에 항목을 추가 한 후 사용자가 뒤로 버튼을 누르면 CategoryList (첫 번째 모양)로 돌아 가야합니다. "그 카테고리의 피자> Pizza Details> Shopping Cart"는 반드시 지워 져야합니다. 다시 터치하면 Main Screen에 있어야합니다.

어떻게하면됩니까?

답변

1

당신은 intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
또는 intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);


를 사용하여 최신 활동을 밀어을 시도 할 수 있습니다 당신의 새로운 활동에 따라 활동의 스택을 취소 그럼
http://developer.android.com/reference/android/content/Intent.html#FLAG_ACTIVITY_CLEAR_TOP

를 참조하십시오.


또한 당신이 백 이벤트를 오버라이드 (override)을 시도 할 수 있습니다 :

@Override 
public boolean onKeyDown(int keyCode, KeyEvent event) { 
    if (keyCode == KeyEvent.KEYCODE_BACK) { 
     moveTaskToBack(true); 
     return true; 
    } 
    return super.onKeyDown(keyCode, event); 
} 

도 볼 Android: Clear Activity Stack 또는 내가 필요 정확히 무엇을 How to clear the Android Stack of activities?

+0

. 고맙습니다. – Emre

+0

StackOverflow로 4 분 정도 기다렸습니다. 지연에 대한 미안 해요 :) – Emre

+0

문제 없어, 고맙습니다 =) – Thkru