728x90
Android studio 화면전환 (Intent) 연습문제
먼저 새로운 프로젝트 을 만들고
새로운 Activity 생성
TextView, EditText, Button 생성
activity_main 에서 activity_second 로 화면 이동
activity_second 에서 activity_main 로 화면 이동
등을 만들어 볼 생각 입니다
새로운 프로젝트 생성
SecondActivity 생성
New - Activity - empty activity 을 눌러준다
이름은 그냥 SecondActivity 했어요
그리고 생성이 완료되면
SecondActivity.java , activity_second.xml 파일이 만들어진 것을 확인 할 수 있고
옆에서도 com.example.intrntex 밑에 그리고 res > layout 밑에 보시면 확인 할 수 있어요
아래 부터는 .xml, .java 파일
설명은 주석으로 했습니다.
xml 같은 경우 전에 아래 URL 클릭
android studio Intent example
첫번쨰 화면
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"
android:orientation="vertical"
>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="첫번째 화면"
android:textSize="30sp" />
<EditText
android:id="@+id/et_test"
android:layout_width="300dp"
android:layout_height="wrap_content"
android:hint="입력해주세요"/>
<Button
android:id="@+id/btn_second" //버튼 id 만들어주기!!
android:layout_gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="두번쨰 이동"/>
</LinearLayout>
MainActivity.java
package com.example.intentex;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity extends AppCompatActivity {
private Button btn_second;
private EditText et_test;
private String str;
@Override
protected void onCreate(Bundle savedInstanceState) {// 처음 시작할때 실행되는 부분
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
et_test = findViewById(R.id.et_test);//et_test 아이디 찾기
btn_second = findViewById(R.id.btn_second);// btn_second 버튼 아이디을 찾아 와라!
btn_second.setOnClickListener(new View.OnClickListener() { //선언
@Override
public void onClick(View v) {//버튼을 눌렀을떄 second 이동 을 할꺼임
str = et_test.getText().toString();// String 형태로 et_test 에 text 을 받아오겠다
//MainActivity 에서 SecondActivity 로 이동 경로
Intent intent = new Intent(MainActivity.this, SecondActivity.class);
intent.putExtra("str", str);//str에있는 값을 가져 가겠다
startActivity(intent);//액티비티 이동
}
});
}
}
두번쨰 화면
activity_second.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".SecondActivity"
android:orientation="vertical">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="두번째 화면"
android:textSize="30sp"
android:gravity="center"/>
<Button
android:id="@+id/btn_first"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="첫 번째 로가기"
android:layout_gravity="center"/>
<TextView
android:id="@+id/tv_second"
android:layout_width="match_parent"
android:layout_height="300sp"
android:textSize="20dp"
android:hint="아무것도 쓰지 않았네요?"
/>
</LinearLayout>
SecondActivity.java
package com.example.intentex;
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 SecondActivity extends AppCompatActivity {
private Button btn_first;//선언
private TextView tv_second;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second);
Intent intent = getIntent();//받는다
String str = intent.getStringExtra("str");//String 데이타 받기
tv_second = findViewById(R.id.tv_second);//tv_second 아이디 찾기
tv_second.setText(str);//받아 온 데이터 tv_second 에 넣기
btn_first = findViewById(R.id.btn_first);//btn_first 아이디을 찾아라
btn_first.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//버튼 클릭시 SecondActivity 에서 MainActivity 로 이동 경로
Intent intent = new Intent(SecondActivity.this, MainActivity.class);
startActivity(intent);// 이동
}
});
}
}
결과를 확인 해봅시다.
EditText 에 Text 입력 한 경우
EditText 에 Text 입력 하지 않은 경우
-화면 전환- -끝-
^____^ @
|ㅒㅅㅒ| @
|\\\\\\\\\\\\\\\\|@
|/ |/ \| \|
728x90
'play > Android' 카테고리의 다른 글
모바일 운영체제 종류 (0) | 2021.08.26 |
---|---|
안드로이드 스튜디오 연습 3 (이미지 넣기, 화면 구성하기, 토스트 메세지) (6) | 2020.04.16 |
안드로이드 스튜디오 화면설정 폰트설정 (0) | 2020.04.14 |
안드로이드 스튜디오 설치 도구 창 단축키 (0) | 2020.04.14 |
안드로이드 스튜디오 연습1 (1) | 2020.04.14 |