상세 컨텐츠

본문 제목

[Android]안드로이드 Activity(액티비티) 이동 안드로이드 Intent(인텐트)

android

by a입니다 2017. 7. 2. 01:22

본문

반응형

안드로이드 실습내용

 

다른 액티비티(Activity)를 호출할때는 Intent(인텐트)가 필요하다.

Intent를 사용하여 다른 액티비티로 이동.

 

결과를 보여줄  액티비티 (Activity)를 추가로 생성.

 

새로운 액티비티 생성방법

 

자바 액티비티 패키지 마우스 오른쪽 - New - Activity - Empty Activity 클릭

하면 새로운 비어있는 액티비티가 완성된다.

 

 

메인액티비티에서는 숫자 두개를 EditText에 입력하고 = (버튼)

클릭시 입력받은 숫자들의 곱한(x) 결과값이 다른 액티비티(결과를 보여주는 페이지)

로 전송된다. 전송과 동시에 다른페이지로 이동. 이동한 페이지에 곱셈결과가

닫기 버튼과 함꼐 나온다. 닫기 버튼을 누르면 메인페이지로 돌아가게 된다.

 

즉 예제에서는 EditText로 숫자를 입력받고 , 버튼 클릭시 변수값들을

다른 액티비티로 전송하는 기능을 구현하는것.

 

 

  프로젝트

 

activity_main.xml(xml) 소스코드 작성

 

 

 

 

MainActivity 소스코드

 

 

 

 

12~14줄 Inner 클래스에서 접근하기 위해 private  멤버변수 선언

 

 

Intent(현재액티비티.this, 전환될 액티비티.class) : Intent생성자를 통해 액티비티 정보 전달

 

putExtra(Key,Value)  :  setAttribute(jsp문법관련 )와 같은 방식으로 전달하자고자

  하는 데이터를 Intent 객체에 저장.

 

 

getIntent            :     이전 액티비티의 객체를 가져옴.

 

get[type]Extra[key] :  putExtra 메소드의 key값을 통해 value를 가져옴.

    getIntentExtra의 경우 2번째 매개변수를 default값

    반드시 추가해야한다.

 

 

25번째줄 : bt_result 클릭시 액티비티 이동 Intent 메소드를 생성해 메소드들을 수행

 

 

activity_result.xml(layout_xml) 소스코드 작성

 

 

ReusltActivity 소스 코드 작성

 

 

 

20~21번줄 :     key값이 없다면 default value 값을 값을 설정해야한다.

finsih()는 해당액티비티에서 나가는 역할을 해준다.

즉 bt_colse를 클릭하면 이전 액티비티로 이동하는것을 말한다.

 

 

 

 

onBackPressd 메소드 라는게 있다.

이걸 선언해주면 단말의 back(백)버튼 눌렀을때 뒤로 가지는 메소드이다.

이를 제거하면 해당액티비티에서 동작하지 않게된다.

 

 

 

 

 곱하기 할 숫자를 다 입력하고  =(버튼)을 클릭하면

 아래와 같이 곱하기 결과값이 나온 액티비티로 이동한다.

    

 

 

뒤로가기 버튼을 클릭하면 이전 액티비티(페이지)로 돌아간다. 

 

 

 

 

 

반응형

관련글 더보기