본문 바로가기
개발

(15) 독학으로 앱 만들어보기 (버튼 클릭하면 짜잔~)

by 라이프_디자이너 2022. 11. 19.
반응형

오늘은 버튼에 대해 알아본다.

 

예전에 공부하던 흐름으로 다시 돌아왔다. 현재 어플 화면에 이미지 넣고 화면 구성을 이것저것 시도해보았다. 공부 흐름이 끊기기도 하고 주제가 왔다 갔다 해서 혼란스러운 부분이 있는 거 같아, 앞으로 공부할 것을 간단하게 짚어본다. 

2021.10.02 - [개발] - (3) 독학으로 앱 만들어보기 (코틀린 안드로이드 앱 공부)

 

(3) 독학으로 앱 만들어보기 (코틀린 안드로이드 앱 공부)

독학으로 앱 만들어보기 (Addroid 앱 개발 홈페이지 사용하기) 2021.09.28 - [개발] - (1) 독학으로 앱 만들어보기 (인터넷 검색, 공부 방법, 코틀린) (1) 독학으로 앱 만들어보기 (인터넷 검색, 공부 방법,

dev-nasus.tistory.com

 

내가 만들려는 어플은

 

내가 만들려는 어플에는 아래와 같은 구성요소 정도만 있으면 될거 같다.

  • 입력
  • 버튼
  • 텍스트
  • 이미지 

지금 현재, 텍스트를 보여주는 것과 이미지는 어떻게 하는지 대충 감이 있는 상태다. 그러면 앞으로 공부해야 할게 입력과 버튼인 거 같다. 그리고 화면 배치를 어떻게 해야 하는지 잘 모르는 상태다. 이걸 기억하고 강의를 빠르게 훑어본다.

 

반응형

 

1. 페이지 접속

 

아래 링크에 접속해서 Android Kotlin 기초 링크 글씨를 클릭한다.

https://developer.android.com/courses

 

학습 과정  |  Android Developers

자신에게 적합한 학습 옵션을 찾아보세요.

developer.android.com

 

2. 배울 내용 확인하고 넘기기 

 

내가 알고 싶은건 버튼을 누르면 어떤 동작을 하게 만들고 싶은 것이다. 과정마다 처음에 어떤 것을 배울 건지 알려준다. 나에게 필요한 내용이 아니면 넘어간다. 참고로, 크롬에 한국어 번역 기능을 이용해서 보고 있다.

https://developer.android.com/codelabs/kotlin-android-training-app-anatomy#1

3. 버튼 눌렸어요~

 

회원가입할 때, 개인정보를 입력하고 회원가입 버튼을 누르면 다음 화면으로 넘어가거나 회원가입을 환영한다는 메시지를 본 적이 있을 것이다. 그것처럼 우리는 버튼을 눌렀을 때 어떤 기능을 실행시키고 싶은 것이다. 방법은 아래와 같다.

 

  • 화면에 버튼 추가
  • 버튼에 이름 붙여주기
  • 앱에 버튼 이름 소개해주기
  • 앱에서 버튼이 할 일 주기
  • 버튼이 눌렸어요~

화면에 버튼 추가하는 방법. Button 태그를 xml에 추가한다.

xml에 추가한 버튼에 이름을 만들어 준다. 여기서 이름은 id로 표현한다. android:id="@+id/내가 하고자 하는 이름" 이렇게 추가하면 되고 여기서는 주사위 게임을 만들기 위해 이름을 roll_button으로 주었다.

앱에다 버튼의 이름을 알려주기. 이름을 알려줄 때는 findViewById()라는 함수를 통해 알려줘야 한다. 위에서 roll_button이라는 이름을 줬기 때문에 findViewById(R.id.roll_button)이라고 한 것이다. R.id. 이건 뭐냐? 우리가 버튼에 이름을 붙여준걸 컴퓨터 어딘가에 기억하고 있어야 쓸 수 있을 텐데, 안드로이드에서는 R.id라는 곳에 기록을 하고 있다

앱에다 버튼 눌렀을 때 뭐 할지 알려주기. 버튼이 눌렸을 때 뭐하는지 알려주는 것은, setOnClickListener라는 함수를 사용한다. setOnClickListener { 버튼 눌렸을 때 할 일 } 이런 형태이고, 여기서는 버튼이 눌렸다는 rollDice()라는 함수를 실행되게 해 놨다. rollDice 함수에는 Toast.makeText라는 함수가 있는데, 해당 함수는 화면에 잠시 나타나는 안내문구를 표시할 때 사용한다.

 

4. 최종 결과

 

이제 버튼을 활용하여 기능을 만들 수 있게 되었다. 다음에는 화면 배치에 대해 알아본다.

반응형

댓글