2016-10-17 2 views
0

이전 활동의 모든 데이터를 지우고 싶습니다. 새로운 활동으로 asyncatsk를 다시 호출해야하는 이전 활동으로 돌아갈 때를 의미합니다. 왜냐하면 내가 다음 활동에 참여했을 때 데이터 시퀀스에서 몇 가지 변경을 수행했지만 원래 데이터에 대해 agin asynctask를 호출해야 할 것입니다.안드로이드에서 이전 활동의 모든 데이터를 제거하는 방법

그래서 누구나 그것에 대해 알고 있습니까 ??

는 그래 난 그냥 당신이 다시에 올 때 어떤 방식으로 활동을 다시 초기화하려면 아래의 기능이

intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
+0

을 달성하기 바라고 위쪽 또는 뒤로 버튼을 눌러 사용자의 작업에 다시 갈 때 당신이 무슨 뜻인지, 또한 시도하는 무언가이다 ? 제발, escenario를 명확히해라. – iguarna

답변

0

를 작동하지 않는 것, 당신이에 원하는 값을 재설정 명확히 할 onResume().

원하지 않는 질문이 있으면 질문을 명확히하십시오.

0

상황에 따라 몇 가지 옵션이 있습니다.

첫째, 당신은이처럼 savedInstanceState을 삭제 시도 할 수 :

public void onCreate(Bundle savedInstanceState){ 
    super.onCreate(null); 
} 

또는 같은

:

protected void onSaveInstanceState(Bundle outState) { 
    super.onSaveInstanceState(outState); 
    outState.clear(); 
} 

둘째, 당신은 특히 "backpressed"이벤트에 이것을 가지고 희망하는 경우 , 활동을 저장 한 상태로 돌아가는 기본값이 아닌 onBackPressed를 재정 의하여 활동의 새 인스턴스를 만들 수 있습니다.

@Override 
public void onBackPressed(){ 
    //super.onBackPressed(); // EXCLUDE this line 
    Intent intent = new Intent(this,TheNextActivity.class); 
    startActivity(intent); 
} 

@iguarna의 대답은 모든 상황에 따라 달라집니다 당신이

관련 문제