2012-11-09 2 views
0

PuzzleActivity를 시작하는 MainActivity가 있고, 다른 레이아웃이있는 SizeSelection activiy에 가고 싶습니다. 레이아웃에서의 프로세스가 활동에서 수행되는 버튼의 나는 SizeSelection에 갔다가 끝난 puzzleactivity을 (다시 시작하려는activity1 시작, activity2로 전환, 완료되면 activity1을 다시 시작

SizeSelection :.

public static short getGridSize(Context content) { 
     if (mIbtn3x3 == view) { 
      short gridSize = 3; 
      return gridSize; 
     }else if (mIbtn4x4 == view) { 
      short gridSize = 4; 
      return gridSize; 
     }else if (mIbtn5x5 == view) { 
      short gridSize = 5; 
      return gridSize ; 
     } 
      return gridSize; 
     } 

PuzzleActivity :

Intent i5 = new Intent(this, SizeSelection.class); 
      startActivity(i5); 
      createGameBoard(SizeSelection.getGridSize(this)); 
      break; 

답변

3

사용 startActivityForResult() 대신 startActivity()입니다. 이렇게하면 시작 활동이 파괴되지 않고 '일시 중지됨'과 같아서 onPause() 메소드가 호출됩니다.

그런 다음, 두 번째에서 첫 번째 활동으로 다시 필요한 사용으로 돌아 가기 :

setResult(RESULT_OK); 
finish(); 

을하고 일부 데이터를 다시 전송해야 할 경우 의도와 오버로드 setResult() 방법을 사용

Intent data = new Intent(); 
data.put... 
setResult(RESULT_OK, data); //RESULT_OK should be replaced by a positive int if you want to use the onActivityResult() method and get the data in the first activity 
finish();