안녕하세요~ 심효근입니다!
뭔가 나른....해지는 시간이네요!
이번 차시에는 Intent와 Activity이동에 대해 배워볼건데요!
일단 항상 하던대로 안드로이드 스튜디오를 실행해봅시다!
이 activity_main에 버튼을 하나 생성해줍시다!
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Activity 전환!"
android:layout_centerInParent="true"
android:id="@+id/btn1"/>
이렇게요!
그리고 그 다음에는!
res/layout에서! layout Resource File을 하나 만들어줍시다!
이거욧!
그럼 이런 화면이 뜰텐데
File Name을 activity_sub로 해주세요!
activity_sub에도 버튼을 하나 만들어 줍시다!
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="홈으로 이동!"
android:layout_centerInParent="true"
android:id="@+id/btn2"/>
요로코롬!
그리고 MainActivity로 이동해볼까요?
뿅! ^~^
이 MainActivity에서 전차시에 배웠던 방식으로 setOnClickListener을 선언해줍시다!
그 후에는 이제 드디어 Intent를 사용해봐야 하겠죠?
Intent가 무엇이냐고요?
안드로이드 어플리케이션을 구성하는 네 가지 기본 요소에는 Activity, Service, Broadcast Receiver, Content Provider가 있어요!
인텐트(Intent)란 이러한 어플리케이션 구성요소(컴포넌트) 간에 작업 수행을 위한 정보를 전달하는 역할을 해요!
인텐트를 가장 손쉽게 사용한 예로는 액티비티간의 화면전환을 들 수 있죠!
오늘이 이 액티비티간의 화면 전환을 사용해 볼거에요!
저기 보이는 setOnClickListener 안에
val intent = Intent(this, SubActivity::class.java)
startActivity(intent)
라고 입력해 줘요!
어라? 근데 Intent에서 에러가 나네? 왜일까요?
그 이유는 바로 Intent를 Import해주지 않아서에요!
import android.content.Intent
이렇게 import를 해주면!
이렇게 Intent가 원상 복귀 됩니다! 그런데....SubActivity가 빨간색이네? 왜일까요?
당연하죠! SubActivity가 없기 때문이죠!
그렇다면... 만들어 줘야겠죠?
New Kotlin File/Class를 생성해줘요!
이름은 SubActivity로!
그러면 이제
이렇게 텅 빈 화면이 뜰거에요! 이제 어떻게 해야할까요?
class SubActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_sub)
}
}
이렇게 activity_sub와 연결해줍니다!
그러고 실행을 해볼까요?
여기까진 정상적으로 실행되는군요!
그럼 버튼을 눌러보면...?
에러가 납니다...
왜냐구요?
바로 AndroidManifest.xml에
<activity android:name=".SubActivity"/>
를 입력해 줘야 합니다!
그리고 다시한번 실행해 볼까요?
일단 실행 잘 되고, 버튼을 누르면??
잘 넘어 가는군요!
근데 홈으로 이동 버튼을 안짜두니 허전하네요?
그러니 짜러가볼까요?
SubActivity.kt로 가주세요!
activity_sub에서 지정했던 버튼 btn2에 setOnClickListener를 선언해주고!
내부에 Intent처리를 해주고 실행을 하게되면??
일단 MainActivity, 잘 뜨는군요.
그럼 버튼을 눌러서..
SubActivity! 여기까지 잘 뜹니다..
그럼 대망의... MainActivity로의 이동....
홈화면 (MainActivity)로의 다시 이동도 멀쩡하게 됩니다!
여기까지 제 5차시 Intent와 액티비티 이동에 관한 내용이였습니다!
앞으로 계속 Intent는 쓰일것이기에 Intent도 놓치는 부분 없이 완벽히 숙지하시고 다음 차시로 넘어가주시면 좋을것 같습니다 ^~^
오늘도 좋은 하루 되세요!!
'Android > Android Lecture' 카테고리의 다른 글
안드로이드 강의 7. ListView 사용법과 CardView레이아웃! (2) | 2019.04.09 |
---|---|
안드로이드 강의 6. Handler를 이용한 Splash화면 구현 (2) | 2019.04.08 |
안드로이드 강의 4. Button, OnClickListener, Toast 메시지 (1) | 2019.04.08 |
안드로이드 강의 3. LinearLayout으로 용지, 계산기 레이아웃 만들기 (0) | 2019.04.08 |
안드로이드 강의 2. SDK설치부터 첫 앱 만들기! (0) | 2019.04.08 |