Tôi vừa bắt đầu học lập trình tại android và tôi gặp sự cố khi sử dụng biến số tại onSaveInstanceState
. Đây là mã của tôi:cách sử dụng biến trong onSaveInstanceState
int resultCode;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
if (savedInstanceState != null) {
super.onRestoreInstanceState(savedInstanceState);
int resultCode = savedInstanceState.getInt("resultCode");
}
Button btnOpenWithResult = (Button) findViewById(R.id.btnOpenWithResult);
btnOpenWithResult.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
Intent myIntent = new Intent(flashlight.this, ThirdActivity.class);
startActivityForResult(myIntent, 1);
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
switch (resultCode) {
case 1:
/** option 1 */
break;
case 2:
/** option 2 */
break;
}
@Override
public void onSaveInstanceState(Bundle savedInstanceState) {
savedInstanceState.putInt("resultCode", resultCode);
super.onSaveInstanceState(savedInstanceState);
}
Tôi muốn lưu biến resultCode
sử dụng onSaveInstanceState
và sau khi nối lại các hoạt động một lần nữa để sử dụng nó ...
(xin lỗi vì trình độ của tôi về tiếng Anh)
Cụ thể hơn, những gì chính xác là vấn đề của bạn? Bạn đã cố gán giá trị cho resultCode chưa. – fiction
Vấn đề của tôi là lưu trạng thái của biến resultCode (switch) thành onSaveInstanceState. Khi tôi viết: savedInstanceState.putInt ("resultCode", resultCode); và sau đó thử sử dụng: int resultCode = savedInstanceState.getInt ("resultCode"); sau đó biến resultCode nó trống – Cyren