Я столкнулся с проблемой передачи данных в onpause() метода активности. Когда пользователь нажимает кнопку в одном действии, второй запуск активности. В методе onPasue 1-го действия я хочу передать некоторые данные другой активности .и использовать intent.putExtra() для сохранения данных в OnPause(). 2-ой деятельности я использую bundle.getString(), чтобы получить data.below мой кодПередача данных между действиями в onPause
public class FirstActivity extends Activity {
Intent intent;
Button b;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_tola_calculation);
b = (Button) findViewById(R.id.button);
intent = new Intent(Tola_calculation.this, Kaat_calculation.class);
b.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
startActivity(intent);
}
});
}
@Override
public void onPause() {
super.onPause();
intent.putExtra("key", "i am value");
}}
и
public class secondActivity extends Activity {
int value;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_kaat_calculation);
Bundle extras=new Bundle();
Intent intent=getIntent();
extras=intent.getExtras();
if (extras!=null) {
String value = extras.getString("key");
Toast.makeText(Kaat_calculation.this,value,Toast.LENGTH_SHORT).show();
}
else
{
Toast.makeText(Kaat_calculation.this,"null problem",Toast.LENGTH_SHORT).show();
}
}}
проблема находится во 2-й активности intent.getExtras() возвращает null first time.i нажмите кнопку возврата 1-я активность resu mes.then я снова нажимаю, чтобы перейти к второму действию. В этот момент данные извлекаются, и int.getextras() не возвращает null.can кто-то объясняет это странное поведение. Или я делаю что-то странное, поскольку я новичок в android programming.i надеюсь, что я в состоянии четко объяснить проблему
спасибо за каждого, с reply.putting его внутри OnClick уже worked.but мне нужно для передачи данных, когда активность собирается приостановить состояние из-за этого нажатие кнопки или какая-либо другая причина. Мне было интересно, какая причина этого поведения. Я получил ответ спасибо –