2012-05-17 3 views
1

5 개의 인터페이스로 응용 프로그램을 개발 중입니다.이전 활동으로 돌아가는 방법?

사용자가 암호를 입력해야하는 활동이 있는데, 사용자가 다음 활동으로 이동 한 후 사용자가 뒤로 단추를 클릭하고 돌아 왔을 때 활동이 있습니다. 암호 활동, 입력 된 암호가 누락되었습니다 ... 어떻게 입력 된 암호를 유지할 수 있습니까?

코드 :

back = (Button) findViewById(R.id.back); 
back.setOnClickListener(new View.OnClickListener() {  

     public void onClick(View v1) { 
      Intent backIntent = new Intent(); 
      backIntent.setClass(getApplicationContext(), LockAppActivity.class); 
      backIntent.setFlags(Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT); 
      startActivity(backIntent); 
      finish(); 
     } 
    }); 

는 가정 앱에서 활동로 시작 -> B -> C -> D -> E

사용자가 C에서 B로 이동

,과에서 액티비티 B "비활성화"버튼이 있습니다. 사용자가 버튼을 누르면 모든 사용자 설정이 지워지고 애플리케이션이 종료됩니다. 버튼을 누르면 레이아웃 C가 나타납니다. 어떻게 변경합니까?

deactivate = (Button) findViewById(R.id.deactivate); 
    deactivate.setOnClickListener(new View.OnClickListener() { 

     public void onClick(View v){ 
      final String STORAGE = "UniqueID_IMSI"; 
      SharedPreferences unique = getSharedPreferences(STORAGE, 0); 
      SharedPreferences.Editor editor1 = unique.edit(); 
      editor1.putString("identifier", ""); 
      editor1.putString("simIMSI", ""); 
      editor1.commit(); 

      final String LOGIN_PASSWORD = "Login_Password";  
      SharedPreferences loginPassword = getSharedPreferences(LOGIN_PASSWORD, 0); 
      SharedPreferences.Editor editor2 = loginPassword.edit(); 
      editor2.putString("loginPassword", ""); 
      editor2.commit(); 

      final String LOCK_APP_PASSWORD = "LockAppPassword"; 
      SharedPreferences userPassword = getSharedPreferences(LOCK_APP_PASSWORD, 0); 
      SharedPreferences.Editor editor3 = userPassword.edit(); 
      editor3.putString("password", ""); 
      editor3.commit(); 

      final String PHONE_NUMBER = "Phone_Number";   
      SharedPreferences phone = getSharedPreferences(PHONE_NUMBER, 0); 
      SharedPreferences.Editor editor4 = phone.edit(); 
      editor4.putString("phoneNumber", ""); 
      editor4.commit(); 

      finish(); 
     } 
    }); 
} 
+0

공유 참고 자료 – keyser

답변

1

어떻게 내가 입력 한 암호

을 저장 SharedPreference와 onResume에서 사용자가 입력 한 암호를 유지할 수 있습니다() 활동의 기능은 SharedPrefrence와 쇼에서 저장된 비밀번호를 리콜 그것은 사용자에게. 활동 라이프 사이클을 이해하려고 할 때가 있습니다.

응용 프로그램은

link에서보세요 종료됩니다. @Romain Guy는 Google입니다. 앱 디자인에 대해 다시 생각해 볼 수 있습니다. 폐쇄 - 응용 프로그램 문제에

0

내가 가장 좋아하는 솔루션은 다음과 같습니다

  • 는 특정 이벤트가 발생하면 종료하고자하는 활동 "에 startActivityForResult"를 사용하는 것이 좋습니다.
  • 당신은 또한 일부 의도 플래그를 사용할 수 있지만 꽤 지저분한 것으로 생각하고 가능한 한 적은 것을 사용하려고합니다.
  • 활동 대신 조각을 사용하십시오. 당신은 정확히 언제 어떤 조각을 보여줄 것인지 선택할 수 있습니다.
관련 문제