안드로이드 (25) 썸네일형 리스트형 [안드로이드 개인공부] 안드로이드 스튜디오 단축키 안드로이드 스튜디오를 사용하면서 단축키에 대해서 알면 개발 속도에 영향을 줄 수있다. 그래서 구글링을 하는 도중 정리가 잘 되어 있는 좋은 자료가 있어서 아래와 같이 정리해보았다. Ctrl + Shift + A : Find in Action 찾고 싶은 기능을 영어로 입력하면 기능과 단축키가 나열된다. 단축키를 찾을 때 환경설정의 keymap으로 들어가는 수고를 줄여준다. 예시) 검색 문자 : Find in 같이 치면 이걸로 시작하는 기능이 표시 됨. Editing Ctrl + Space : 기본 코드 완성 Ctrl + Shift + Space : 스마트 코드 완성(예상되는 타입의 메소드또는 변수명 ) Ctrl + Q : 빠른 문서보기 Shift + F1 : 외부 문서보기(http://developer.a.. [안드로이드 개인공부] Retrofit에 대해서 단계별로 공부해보자! 프로젝트 진행하면서 무작정 Retrofit 라이브러리를 사용했었다. 그래서인지 단계별로 왜 이렇게 구현하는 것인지, 왜 이것을 사용하는지 아무것도 모른 상태로 사용했다. 그렇기에 여기에 Retrofit의 기본 단계들을 공부하여 정리하려고한다. 일단, Retrofit은 안드로이드 및 자바를 위한 안전한 REST 클라이언트라고 말할 수 있다. 2010년 당시에는 네트워크 Request 보내기 위해서는 low-level java connection을 통해서 스레딩, json 파싱 등을 스스로 구현하여 사용해야했다. 이것들은 너무 복잡했다. 하지만 Retrofit은 이러한 복잡한 구현들을 모두 숨긴다. 즉, API와 Interact 하는 것을 더 쉽게 도와준다. 그렇기에 개발자들은 더 쉬운 네트워크 통신을 하기.. [안드로이드 기본] 그리드뷰 사용방법 그리드뷰는 격자모양으로 아이템을 배치할 수 있는 컨테이너이다. 일반적으로, 이미지를 격자모양으로 배치할 때 사용을 주로 하지만, 텍스트와 더불어 버튼까지도 배치하는 것이 가능하다. 그리드뷰는 뷰 그룹이기때문에 최상단에 올 수가 있다. [activity_main.xml] 그리드뷰는 위의 코드와 같이 선언한다. 여기서 제일 중요한 부분은 numColumns 속성인데, 한줄에 5개의 아이템이 들어가는 속성이다. 그리드뷰는 각각의 아이템을 그려주기 위해서 어댑터 클래스를 사용해야한다. 어댑터는 데이터를 매칭시켜주는 역할을 한다. 나는 ImageAdapter를 만들어서 그리드뷰에 설정해주었다. [ImageAdapter.kt] package com.practice.demogridview import android... [안드로이드 기본] 스크롤뷰 사용방법 스크롤뷰는 한 화면에 많은 뷰들을 보여줄 때 스크롤을 할 수 있게 해주는 뷰이다. 스크롤뷰의 특성으로는 하나의 뷰를 감쌀 수 있다는 것이다. 먼저 스크롤뷰의 간단한 예제로, 세가지의 텍스트뷰를 스크롤뷰 안에 넣어 보자. 하나의 뷰를 감쌀 수 있기 때문에 LinearLayout으로 세가지의 텍스트뷰를 감싸고 넣을 것이다. [activity_main.xml] 하나의 뷰(LinearLayout)는 스크롤뷰에 감싸지고, 화면에서 벗어난 뷰들을 스크롤을 통해서 하단으로 또는 상단으로 이동할 수 있게된다. 다음은 화면 하단부만 스크롤 할 수 있게 하고, 상단에 버튼을 고정시키는 코드이다. [activity_main.xml] 상위 LinearLayout에 버튼을 감싸고, 그 밑에 스크롤뷰로 묶었다. 그 스크롤뷰는 텍.. [안드로이드 기본] 멀티 터치를 감지하는 방법 스마트폰 앱을 보면, 두손가락으로 줌인을 하거나 줌아웃을 하는 경우가 있다. 또한, 한손가락 뿐만아니라 여러손가락도 사용을 할 경우도 발생한다. 이때 포인터를 가져와서 작업해야하는데, 멀티 포인터를 가져오기 위해 가장 기본적인 멀티 터치를 감지하는 방법에 대해서 알아보려고한다. 코드 구현 진행순서는 1. 텍스트 뷰가 두개 있는 activity_main.xml을 하나 만든다. (터치 했을 때 각 포인터의 X, Y의 값이 텍스트뷰에 보여줄것이다.) 2. 멀티 터치를 좌표값을 받아 올수 있는 터치 이벤트를 오버라이드 하는 MainActivity.kt를 만든다. 3. 포인터 값을 두개의 텍스트에 setText() 하여 UI로 나타낸다. 먼저 activity_main.xml을 만든다. [activity_main... [안드로이드 기본] 기본 다이얼로그 띄우기 다이얼로그는 앱 개발을 하면서 정말 많이 사용한다. 지금은 비록 기본 다이얼로그를 띄우는 작업이지만, 다이얼로그 자체를 커스터마이징해 원하는 디자인으로 만들고, 버튼의 갯수도 지정도 가능하게 만들 수 있다. 간단한 정보를 몇초간 띄워주는 토스트(Toast)와는 다르기에 알아두면 도움이 될것이다. 기본적으로 다이얼로그는 타이틀과 메시지 그리고 버튼으로 구성된다. 다이얼로그의 종류는 AlertDialog, DatePickerDialog, PreogressDialog, TimePickerDialog 등이 있는데 아래 예제에서는 AlertDialog를 가지고 구현할것이다. AlertDialog 클래스의 메소드는 아래와 같이 정리할 수 있다. AlertDialog create() AlertDialog를 생성한다... [안드로이드 기본] 터치 이벤트 순서 알아보기 안드로이드 사용자 인터페이스를 보면, 액티비티 위에 다양한 뷰들이 올라가는 방식이다. 그러다보면 이벤트가 중첩되어서 처리되는 경우가 있다. 예를 들어서, 어떤 액티비티에 터치 이벤트가 설정되어 있는데 그 위에 올라가 있는 뷰에도 터치 이벤트가 설정되어 있다면 어떻게 될까??? 그리고 그 뷰에 추가적으로 터치 리스너도 추가 되어 있다면 어떻게 동작할까? 무엇이 먼저 처리되지?? 터치 이벤트를 처리하고나서 해당 이벤트를 전달하고 싶지 않을 때 어떻게 해야할까?? 엑티비티위에 버튼이 올라간다고 하면, 그 버튼을 클릭했을 때 실질적으로는 버튼도 터치가 되지만, 그 해당 엑티비티도 선택이된다. 그렇다는 것은 각각 가지고 있는 터치 이벤트들이 전달 전달되어 실행된다는 것이다. 먼저 아래의 예제는 1. 엑티비티에 터.. [안드로이드 기본] 클릭 이벤트 붙이는 방법 일단 클릭하면 대표적으로 버튼을 떠올릴 수 있을 것이다. 그리고 우리는 그 버튼을 클릭했을 때 무언가 이벤트를 발생시키고 싶어한다. 버튼에 클릭 이벤트를 붙이는 방법에는 어떤것들이 있을까? 방법은 총 3가지로 나눌 수 있으며 아래와 같다. 1. 익명 클래스를 사용해서 버튼에 리스너 객체를 설정하는 방법 2. 버튼 리스너를 액티비티에서 구현하고 이 리스너를 버튼에 설정하는 방법 3. 레이아웃 XML 파일의 Button 속성에 onClick 요소를 추가하는 방법 [익명 클래스를 사용해서 버튼에 리스너 객체를 설정하는 방법] package com.practice.android_basic_booster_course import androidx.appcompat.app.AppCompatActivity import.. 이전 1 2 3 4 다음