728x90
정답이 아닐 수 있습니다. 오류가 있으면 알려주세요ㅎ
1. 2번 액티비티
2. 3번 액티비티 스택
3. 3번 인텐트
4. 2번 명시적 인텐트
5. 2번 startActivity()
6. 2번 startActivityForResult()
7. 2번 ACTION_VIEW
8. 1번 onCreate()
9. 4번 onPause()
10.
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity">
<Button
android:id="@+id/btn"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:backgroundTint="#CCCCCC"
android:text="서브 액티비티로부터 문자열 반환받기"
android:textColor="@color/black" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="반환된 문자열" />
<TextView
android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="___________________" />
</LinearLayout>
subactivity.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<EditText
android:id="@+id/edit"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="@color/black" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<Button
android:id="@+id/insert"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:layout_weight="1"
android:backgroundTint="#CCCCCC"
android:text="입력완료"
android:textColor="@color/black" />
<Button
android:id="@+id/cancel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:layout_weight="1"
android:backgroundTint="#CCCCCC"
android:text="취소"
android:textColor="@color/black" />
</LinearLayout>
</LinearLayout>
MainActivity.java
package kr.co.company.ch9_exercises;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
static final int GET_RESULT = 1;
TextView text;
Button btn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
setTitle("ActivityForResult");
btn = findViewById(R.id.btn);
text = findViewById(R.id.text);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(MainActivity.this, SubActivity.class);
startActivityForResult(intent, GET_RESULT);
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == GET_RESULT) {
if (resultCode == RESULT_OK) {
text.setText("" + data.getStringExtra("RESULT"));
}
}
}
}
SubActivity.java
package kr.co.company.ch9_exercises;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import androidx.appcompat.app.AppCompatActivity;
public class SubActivity extends AppCompatActivity {
EditText edit;
Button insert, cancel;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.subactivity);
edit = findViewById(R.id.edit);
insert = findViewById(R.id.insert);
cancel = findViewById(R.id.cancel);
insert.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent();
intent.putExtra("RESULT", edit.getText().toString());
setResult(RESULT_OK, intent);
finish();
}
});
cancel.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
setResult(RESULT_CANCELED);
finish();
}
});
}
}
결과
728x90
'Android > 그림으로 쉽게 설명하는 안드로이드 프로그래밍 개정6판' 카테고리의 다른 글
그림으로 쉽게 설명하는 안드로이드 프로그래밍(개정6판) 연습문제 12장 (2) | 2022.12.03 |
---|---|
그림으로 쉽게 설명하는 안드로이드 프로그래밍(개정6판) 연습문제 11장 (0) | 2022.12.03 |
그림으로 쉽게 설명하는 안드로이드 프로그래밍(개정6판) 연습문제 8장 (0) | 2022.11.23 |
그림으로 쉽게 설명하는 안드로이드 프로그래밍(개정6판) 연습문제 10장 (0) | 2022.11.08 |
그림으로 쉽게 설명하는 안드로이드 프로그래밍(개정6판) 연습문제 7장 (0) | 2022.10.31 |
댓글