2011-12-07 1 views
12

나는 나의 활동을 끝내고 그 결과로 돌아가려고 노력하고 있는데, 나는 부모 활동에 onActivityResult를 가지고 있으며, 아래의 같은 방법을 사용하는 곳이 다른 곳에있다.성냥 봉증 활동이 끝나지 않았습니까?

public void deleteFile(){ 
     boolean deleted=FileManager.getInstance().deleteMeasurementData(this.getIntent().getData(), this); 
     if(deleted){ 
      Toast.makeText(this, originalData.getName() +".mmd Has been deleted", Toast.LENGTH_SHORT); 
      setResult(EditMeasurement.RESULT_YES_DELETED); 
      finishActivity(EditMeasurement.RESULT_YES_DELETED); 
     }else { 
      Toast.makeText(this, originalData.getName() +".mmd did NOT delete", Toast.LENGTH_SHORT); 
      Log.e(TAG, "File did NOT delete error"); 
     } 

    } 

이 방법 이 메뉴에서 호출되었다 : 어떤 밝은 아이디어

public boolean onOptionsItemSelected(MenuItem item) { 
     // Handle item selection 
     Log.i(TAG, "something choosen "+item.getItemId()+" it should have been: "+R.id.om_measurement_menu_delete); 

     switch (item.getItemId()) { 
     case R.id.om_measurement_menu_edit: 
      editFile(); 
      return true; 
     case R.id.om_measurement_menu_delete: 
      deleteFile(); 
      return true; 
     case R.id.om_measurement_menu_cancel: 
      endActivity(); 
      return true; 
     default: 
      return super.onOptionsItemSelected(item); 
     } 
    } 

사람은 왜 닫습니다 나던?

+1

android:launchMode="singleTask"을 필요로 그냥 DeleteFile을 (에 마무리()를 넣어) 나를 – user370305

답변

26

finishActivity 현재에서 다른 활동을 종료하는 데 사용됩니다 - 내가 마무리로했다 그래서 그냥 finish();

+1

그래서 간단한 .. 일이 알려하지만 2 시간 동안 나를 바보 만든 ... – Youngjae

6

로 변경, http://developer.android.com/reference/android/app/Activity.html#finishActivity(int)를()를 가까이하지, 그럼 내가 그 특별한 것을 깨달았다 것조차 리턴으로하지만, 활동 매니페스트

+1

은 IMO,이 답변이 하나있었습니다한다 의견이나 판본은 인정 된 답변에 귀중한 공헌으로 보입니다. 그러나 포스터에는 의견을 말할만큼 충분한 평판이 없었으며 답변을 편집하는 것은 많은 사람들이 감히하지 않을 일입니다 (직접 포함, 의견에는 제안을 선호함). – mcmlxxxvi