개발새발 로그

안드로이드 스튜디오 BUTTON 사용하기 본문

안드로이드

안드로이드 스튜디오 BUTTON 사용하기

이즈흐 2022. 3. 18. 02:24

안드로이드 스튜디오를 이용해 첫 번째로 사용해볼 기능은 BUTTON 기능입니다.

 

먼저 안드로이드 실행해서 빈 프로젝트로 만들어 줍니다!

 

그리고 화면에서 왼쪽을 보면 xml파일이 있습니다.

 

xml은 앱화면을 구성하고 있는 코드 파일이라고 생가하시면 됩니다.

 

 

xml을 누른 후에 해당 화면이 나오면 옆에 도구들을 이용하여 버튼을 삽입합니다.

오른쪽 상단에 split을 누르고 버튼이 삽입되는 것을 확인합니다!

 

여기서 중요한 것이 있습니다.

 

현재 상단 화면과 같이 하려면 고쳐야 할 것이 있습니다.

1. 먼저 처음에 프로젝트가 생성되면 기본값으로 constraintLayout으로 되어있어서 LinearLayout으로 바꿔야 합니다.

2. LinearLayout에서는 정렬하는 설정들이 있어 기본적으로 원하는 버튼 위치를 설정하여야 합니다.

 

  • LinearLayout으로 바꾸는 법

처음에 xml을 생성하면 constraintLayout으로 되어있는데 체크한 부분을 LinearLayout으로 바꿔주면 됩니다.

  • LinearLayout 설정 (세로 정렬, 가로 정렬)

LinearLayout 상단에 android:orientation= 을 입력하면 자동완성으로 vertical 하고 horizontal 이 뜨게 되는데 

말 그대로 세로 정렬과 가로 정렬입니다.

설정하시게 되면 상단 이미지와 같이 버튼들이 가로로 꽉 찬 너비로 세로 정렬이 됩니다.

  • LinearLayout 설정(gravity 설정)

gravity를 ceter로 설정하게 되면 모든 객체들이 가운데 정렬하게 됩니다.

 

그리고 객체마다 Layout_gravity를 따로 설정하여 각각 다른 설정을 할 수도 있습니다.

 

  • LinearLayout 설정(weight 설정)

버튼 객체마다 android:layout_weight= 를 설정하게 되면 각각의 객체를 화면 기준으로 비율을 준다고 생각하시면 됩니다!

 


다시 본론으로 돌아와서!

 

버튼의 속성들 중에서

id와 text를 바꿔줍니다.

ID는 말 그대로 버튼의 이름을 설정해주는 것입니다. 나중에 버튼 액션을 위해 객체를 불러와야 하는데 이때 이 ID를 사용합니다!

text가 @string/strbtn인 이유는 간단하게 설명드리겠습니다.

현재 string.xml파일에 제가 이름들을 설정해놓았습니다.

그래서 @string/strbtn1으로 불러와 버튼이 화면에 어떤 텍스트를 나타낼 건지 설정할 수 있습니다.

 

이걸 번거롭게 하는 이유는 만약에 버튼에 그대로 한국어를 입력하게 되면 오류가 발생할 수도 있습니다.

그래서 언어를 자유롭게 쓸 수 있는 string.xml파일을 이용하면 오류 없이 실행할 수 있습니다.

 

 

 

 

 

이제 버튼의 액션을 넣어볼까요??

 

MainActivity를 클릭하면 익숙한 자바가 보입니다.

코드 부분에서 

Button button1;

을 하게 되면 우리가 설정했었던 id를 불러오기 위해 임의의 변수 선언을 해주는 것입니다.

이때 Button을 사용하기 위해 ctrl+shift+o를 눌러 자동으로 import 해줍니다.

 

 

그리고 onCreate 부분에 

button1=findViewById(R.id.button1);

을 입력합니다.

이 명령줄은 아까 생성한 임의의 변수에 우리가 만든 버튼의 ID를 갖고 와 변수에 저장한다는 것입니다.

 

onCreate는 쉽게 말하면 레이아웃이 생성되면 실행되는 부분이라고 생각하면 됩니다.

 

그리고 이미지와 같이 코드를 입력해야 하는데 너무 길다고 생각되실 겁니다,

쉽게 하는 방법은 

button1.setOnC 까지만 입력하면 ctrl+ space자동완성을 하고, 생성된 명령줄 괄호 안에 

new를 입력하고ctrl+space를 하게 되면 View.OnclickListener이 보이게 되는데 선택 후 엔터를 누르게 되면

자동으로 하단 명령어까지 모두 입력됩니다.

 

이제 Onclick안에 아래 명령어를 입력하게 되면 앱에서의 버튼이 각각의 명령을 수행하게 됩니다.

 

//인터넷 열기
Intent mIntent = new Intent(Intent.ACTION_VIEW.Uri.parse("http://m.naver.com"));
startActivity(mIntent);

//911 전화
Intent mIntent = new Intent(Intent.ACTION_VIEW.Uri.parse("tel:/911"));
startActivity(mIntent);

//갤러리
Intent mIntent = new Intent(Intent.ACTION_VIEW.Uri.parse("content://media/internal/images/media"));
startActivity(mIntent);

//메시지 출력
Toast.makeText(getApplicationContext(),"버튼을 눌렀어요",Toast.LENGTH_SHORT).show();

//종료
finish();

해당 명령어들의 자세한 설명은 각각 명령어 포스팅을 할 때 자세히 설명드리겠습니다.

 

728x90
반응형
LIST