MainActivity.java
package com.example.booklist;
import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContracts;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
TextView tv2, tv3, tv4, tv5;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
ActivityResultLauncher<Intent>mStarResult = registerForActivityResult(
new ActivityResultContracts.StartActivityForResult(),
result -> {
if (result.getResultCode() == RESULT_OK) {
Intent intent = result.getData();
String title = intent.getStringExtra("title");
String author = intent.getStringExtra("author");
String publisher = intent.getStringExtra("publisher");
String pubdate = intent.getStringExtra("pubdate");
tv2.setText(title);
tv3.setText(author);
tv4.setText(publisher);
tv5.setText(pubdate);
}
}
);
public void onButton1Click(View view) { //수정버튼
tv2 = findViewById(R.id.textView2);
String title = tv2.getText().toString();
tv3 = findViewById(R.id.textView3);
String author = tv3.getText().toString();
tv4 = findViewById(R.id.textView4);
String publisher = tv4.getText().toString();
tv5 = findViewById(R.id.textView5);
String pubdate = tv5.getText().toString();
Intent intent = new Intent(this, SubActivity.class);
intent.putExtra("title", title);
intent.putExtra("author", author);
intent.putExtra("publisher", publisher);
intent.putExtra("pubdate", pubdate);
mStarResult.launch(intent);
}
}
SubActivity.java
package com.example.booklist;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
public class SubActivity extends AppCompatActivity {
EditText et1, et2, et3, et4;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_sub);
Intent data = getIntent();
String title = data.getStringExtra("title");
String author = data.getStringExtra("author");
String publisher = data.getStringExtra("publisher");
String pubdate = data.getStringExtra("pubdate");
et1 = findViewById(R.id.editText1);
et1.setText(title);
et2 = findViewById(R.id.editText2);
et2.setText(author);
et3 = findViewById(R.id.editText3);
et3.setText(publisher);
et4 = findViewById(R.id.editText4);
et4.setText(pubdate);
}
public void onButton2Click(View view) { //확인버튼
String title = et1.getText().toString();
String author = et2.getText().toString();
String publisher = et3.getText().toString();
String pubdate = et4.getText().toString();
Intent data2 = new Intent(SubActivity.this, MainActivity.class);
data2.putExtra("title", title);
data2.putExtra("author", author);
data2.putExtra("publisher", publisher);
data2.putExtra("pubdate", pubdate);
setResult(RESULT_OK, data2);
finish();
}
public void onButton3Click(View view) { //취소버튼
finish();
}
}




명시적 인텐트