2016-07-14 2 views
0

So I is Деятельность A и деятельность B. A является основным экраном приложения, и из этого мероприятия я могу открыть B. Внутри B пользователь вводит некоторые данные, которые отправляются через намерение обратно на активность A, затем данные отображаются на экране.Запретить приложению загружать явные намерения каждый onResume

Я заметил, что, хотя намерение работает отлично, каждый раз, когда я снова открываю приложение в действии А, есть точная копия данных, отправленных в последнем намерении.

onResume активности (Ресивер и Displayer данных)

@Override 
    protected void onResume() { 
     super.onResume(); 

     Intent intent = getIntent(); 
     String name = intent.getStringExtra("name"); 
     String path = intent.getStringExtra("path"); 

     setAttrs(name, path); 
    } 

Это намерение, которое посылает данные из B к , намерение является переплетены на слушателя OnClick

send.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View view) { 
       name = mEditText.getText().toString(); 

       Intent intent = new Intent(SecondActivity.this, MainActivity.class); 
       intent.putExtra("name", nameFile); 
       intent.putExtra("path", outputFile); 
       startActivity(intent); 


      } 
     }); 

Заранее спасибо.

ответ

0

Изучите использование startActivityForResult() от ActivityA. В ActivityB вы звоните setResult() и предоставляете Intent, который отправляется обратно на адрес ActivityA. В ActivityA вы можете реализовать onActivityResult() для обработки результата.

+0

Спасибо, что он работал. – Ddddddd

+0

Вы очень рад, рад, что вы смогли заставить его работать. –

Смежные вопросы