핸드폰 디바이스 는 크기 가 작 습니다 . 고로 한 화면 에 많 은 기능 을 넣 기 가 굉장히 힘 이 드 는데요 . 자취방 에 많 은 물건 을 가져다 놓 기 위해 옷장 안 에 옷 을 넣 고 수납장 안 에 물건 을 넣 고 하 는 것 처럼 어플리케이션 도 한 페이지 에 최대한 많 은 기능 을 넣 기 위해서 는 UI 를 효율 적 으로 구성 할 필요 가 있 습니다 . 자취방 의 서랍장 처럼 한 액티비티 에 모든 기능 을 다 띄워 놓 는 것 보다 는 사용 자 가 필요 한 경우 에 액션 을 취하 면 숨겨 졌 던 기능 이 나오 는 방식 으로 도 생각 해 볼 수 있 습니다 . 그렇게 하 면 액티비티 의 공간 이 훨씬 절약 되 니까요 . 애니메이션 을 활용 한 슬라이드 메뉴 만들 기 프로젝트 의 구성 은 다음 과 같 습니다 . FrameLayout 에 는 Layout 을 중첩 해서 사용 할 수 있 습니다 . FrameLayout 안 에 SubLayout 을 만들 고 android : v . . 
 [ Android ] 확장 리스트 뷰 만들 기 ( ExpandableListView ) 
 2018 . 07 . 23 10 : 58 
 안드로이드 개발 을 하 다 보 면 리스트 뷰 안 에 세부 리스트 뷰 를 넣 고 싶 을 때 가 있 습니다 . 예 를 들 면 카테고리 메뉴 나 게시판 댓글 기능 구현 같 은 기능 들 이 죠 . 이럴 때 유용 하 게 사용 할 수 있 는 기능 이 있 습니다 . 바로 ExpandableListView 입니다 . ExpandableListView 는 단순히 아이템 을 나열 하 는 일반 리스트 뷰 와 는 달리 아이템 을 그룹 으로 묶 어 Display 할 수 있 기 에 좀 더 깔끔 한 UI 를 구성 할 수 있 게끔 도와 줍니다 . 확장 리스트 뷰 만들 기 ( ExpandableListView ) ※ ExpandableListView 의 특징 1 . ExpandableListView 는 기본 적 으로 스크롤 을 지원 합니다 . 2 . ExpandableListView 의 아이템 은 원 하 는 모양 으로 변경 하 는 것 이 가능 합니다 . 3 . 그룹 명 왼쪽 에 . . 
 2018 . 07 . 22 15 : 52 
 프로그램 을 혼자 개발 할려고 하 면 힘들 죠 . 특히 개발 을 하 면서 디자인 도 같이 병행 해야 하 는 어플리케이션 을 만들 어야 할 경우 에 는 더 그렇 습니다 . 기능 보다 디자인 이 더 암 걸려요 . 하지만 오픈 소스 를 사용 하 면 개발 과 디자인 을 쉽 게 만들 고 개발 시간 도 짧 게 만들 어 줍니다 . 소프트웨어 가 꾸준히 발전 하 고 있 는 이유 는 바로 이런 오픈 소스 덕 이 아닐까요 ? 이번 포스팅 에서 는 제 가 주로 사용 하 는 안드로이드 오픈 소스 사이트 에 대해서 알려 드리 고자 합니다 . 오픈 소스 라이브러리 1 . Android 개발자 포털 안드로이드 라이브러리 오픈 소스 무료 / 유료 / 데모 버전 이 있 습니다 . 오래 된 사이 트임 에 도 불구 하 고 최근 까지 도 계속 업데이트 되 고 있 는 사이트 입니다 . 2 . 초보 개발자 를 위한 안드로이드 오픈 소스 라이브러리 Best 27 aedi 님 께서 정리 해 . . 
 [ Android ] 어플리케이션 UI 만들 기 ( 사용 하 기 편리 한 인터페이스 ) 
 2018 . 07 . 21 07 : 30 
 좋 은 프로그램 은 사용 하 기 편리 해야 합니다 . 좁 은 핸드폰 화면 에 많 은 기능 을 넣 어야 하 는 어플리케이션 일 경우 그 중요 성 이 더더욱 커 지 죠 . 특히 복잡 한 스마트폰 을 사용 하 는데 익숙 치 않 은 연배 가 있 으신 중 장년층 을 타 겟 으로 할 경우 에 는 어플리케이션 UI 가 더 중요 해 지 겠 죠 . UI ( User Interface ) 란 ? 휴대폰 , 컴퓨터 , 내비게이션 등 디지털 기기 를 작동 시키 는 명령어 나 기법 을 포함 하 는 사용 자 환경 을 뜻 한다 . 이용자 들 이 IT 기기 를 구동 하 기 위해서 접촉 하 는 매개체 로 컴퓨터 를 조작 할 때 나타나 는 이른바 ' 아이콘 ' 이나 텍스트 형태 구동 화면 도 포함 된다 . 스마트폰 의 경우 애플리케이션 아이콘 형태 및 화면 구성 을 가리킬 때 가 많 다 . - 네이버 백과사전 - 어플리케이션 UI 만들 기 ( 사용 하 기 편리 한 인터페이스 ) 앞선 포스팅 에서 . . 
 [ Android ] 네 비게 이 션 드 로 어 ( Navigation Drawer ) 사용법 
 2018 . 07 . 20 12 : 30 
 물건 은 많 은데 보관 할 공간 이 없 다면 어떻게 할까요 ? 수납장 을 하나 장 만 해서 정리 를 하 면 될 것 입니다 . 스마트폰 의 화면 은 작 습니다 . 대부분 한 뼘 크기 도 안 되 는 화면 을 가지 고 있 죠 . 하지만 스마트폰 의 어플리케이션 에 는 생각 보다 다양 한 기능 이 들어가 야 만 합니다 . 공간 은 없 는데 기능 은 많이 들어가 야 하 니 어플리케이션 에 도 수납장 을 하나 장 만 해야 겠 군요 . 안드로이드 에 네 비게 이 션 드 로 어 라는 기능 이 있 습니다 . 줄여서 네비 바라 고 부르 는 기능 입니다 . 위 사진 은 네 비게 이 션 드 로어 의 기본 화면 입니다 . 작 동법 은 화면 에서 왼쪽 에서 오른쪽 으로 쓸 던지 액션 바 의 네 비바 버튼 을 누르 면 튀 어 나옵니다 . 어플리케이션 어느 곳 에서 나 작동 한다는 특징 이 있 기 때문 에 로그인 이 필요 한 어플리케이션 일 경우 프로필 정보 를 주로 넣 습니다 . 네 비게 이 션 드 로 어 ( Navigat . . 
 [ Android ] ViewPager 와 Fragment 를 활용 하 여 효율 적 인 UI 구성 하 기 
 어플리케이션 을 만들 때 가장 중요시 생각 해야 할 문제 가 효율 적 인 UI 구성 이 아닌가 싶 습니다 . 컴퓨터 보다 불편 한 디바이스 인 핸드폰 어플리케이션 의 UI 는 그 중요 성 이 특히 강조 됩니다 . 카카오톡 은 국민 채팅 어플리케이션 입니다 . 카카오톡 이 국민 어플리케이션 이 된 계기 는 시장 의 빠른 선점 과 도 같 은 이유 도 있 겠 지만 편리 한 UI 도 한몫 을 했 다고 생각 합니다 . 바로 이 카카오톡 의 UI 가 TabLayout + ViewPager 형식 으로 이루어져 있 습니다 . 카카오톡 의 UI 입니다 . 위 와 같 은 구조 를 이루 고 있 죠 . 카카오톡 을 사용 하 다 보 면 위 의 메뉴 를 눌러서 페이지 를 전환 할 수 도 있 지만 손가락 으로 쓸 어서 페이지 를 넘길 수 도 있 죠 . ViewPager 를 사용 하 면 손가락 으로 쓸 어서 페이지 를 넘기 는 기능 을 사용 할 수 있 게 됩니다 . 사용 해 보 면 알 겠 지 . . 
 [ Android ] 안드로이드 4 대 컴포넌트 ( 구성 요소 ) 란 무엇 인가 ? 
 2018 . 07 . 13 01 : 32 
 안드로이드 의 4 대 컴포넌트 는 액티비티 , 서비스 , 콘 텐트 제공 자 , 방송 수신자 이렇게 4 가지 를 말 합니다 . 어플리케이션 을 만들 때 주요 구성 요소 이 자 안드로이드 의 사실 상 의 모든 구성 요소 입니다 . 각각 의 구성 요소 는 인 텐트 를 통해서 상호 통신 을 합니다 . 즉 액티비티 에서 다른 구성 요소 를 호출 할 때 는 인 텐트 를 거쳐야 한다는 것 입니다 . 1 . Activity ( 액티비티 ) 액티비티 는 UI 화면 을 담당 하 는 컴포넌트 입니다 . 액티비티 역할 을 하 기 위해서 는 자바 소스 에서 Activity 클래스 를 상속 해야 하 며 액티비티 가 기본 적 으로 가지 고 있 는 생명 주기 메소드 를 재정 의 하 여 원 하 는 기능 을 구현 하 는 방식 으로 제작 합니다 . 가장 많이 쓰이 는 컴포넌트 이 기 때문 에 굉장히 중요 하 다고 볼 수 있 습니다 . Activity ( 액티비티 ) 의 특징 1 . 안드로이드 어 플리 케 . . 
 [ Android ] 안드로이드 스튜디오 design editor is unavailable until a successful build 에러 해결 
 2018 . 07 . 12 01 : 20 
 안드로이드 스튜디오 XML 편집기 에서 뜨 는 design editor is unavailable until a successful build 에러 해결 방법 입니다 . 간만에 안드로이드 스튜디오 를 켰 더니 세팅 이 충돌 이 났 는지 XML 편집기 에 위 에 보이 시 는 것 처럼 에러 가 떴 습니다 . 아마 프로젝트 동기 화 과정 에서 문제 가 발생 한 것 같 은데 구글링 을 통해 알아보 니 고치 는 방법 이 매우 쉽 더군요 . 방법 은 아래 와 같 습니다 . 안드로이드 스튜디오 상단 에 보이 는 망치 모양 의 아이콘 을 클릭 해 주 시 면 됩니다 . 단축키 는 Ctrl + F 9 입니다 . 굉장히 Simple 하 죠 ? 버튼 을 눌러 주 기 만 하 면 바로 고쳐 집니다 . 
 어플리케이션 을 만들 때 하나 의 화면 을 가지 고 어플리케이션 을 만들 지 는 않 죠 . 하나 의 화면 에 모든 기능 을 담 기 란 불 가능 합니다 . 대부분 의 어플리케이션 은 많 은 View 를 모으 고 모아서 만든 결과물 입니다 . 그래서 안드로이드 에서 는 화면 간 이동과 화면 간 데이터 전달 이 무척 이나 빈번 하 고 중요 합니다 . 안드로이드 에서 페이지 전환 과 페이지 간 데이터 전달 은 Intent 를 통해서 구현 할 수 있 습니다 . ※ 인 텐트 란 인 텐트 는 앱 컴포넌트 가 무엇 을 할 것 인지 를 담 는 메시지 객체 입니다 . 메시지 는 의사소통 을 하 기 위해 보내 고 받 는 것 이 지요 . 메시지 를 사용 하 는 가장 큰 목적 은 다른 액티비티 , 서비스 , 브로드 캐스트 리시버 , 컨 텐트 프로 바이더 등 을 실행 하 는 것 입니다 . 인 텐트 는 그 들 사이 에 데이터 를 주 고 받 기 위한 용도 로 도 쓰 입니다 . 화면 전환 화 . . 
 [ Android ] 안드로이드 란 무엇 인가 ? 
 2018 . 07 . 10 00 : 26 
 ▶ 안드로이드 란 ? 안드로이드 는 구글 에서 만든 스마트폰 용 운영 체제 입니다 . 운영 체제 와 미들웨어 , 사용 자 인터페이스 , 어플리케이션 , MMS 서비스 등 을 하나 로 묶 어 서비스 를 제공 하 며 다양 한 어플리케이션 을 만들 어 설치 하 면 실행 될 수 있 도록 구성 된 어플리케이션 플랫 폼 이 라고 도 볼 수 있 습니다 . 많 은 사람 들 이 iOS ( 애플 운영 체제 ) 에 견주 어 스마트폰 과 태블릿 으로 안드로이드 운영 체제 를 사용 하 면서 , 안드로이드 는 세계 모바일 시장 에서 가장 성공 한 OS 라는 평가 를 받 고 있 습니다 . 안드로이드 는 리눅스 ( Linux ) 를 기반 으로 제작 되 었 고 언어 는 자바 를 사용 합니다 . ▶ 안드로이드 의 등장 안드로 이 는 2005 년 구글 이 앤디 루빈 이 라는 사람 이 설립 한 안드로이드 라는 회사 를 인수 하 면서 시작 합니다 . 작 은 소프트웨어 회사 에 불과 했 던 안드로이드 사 . . 
 [ Android ] 꺽 은 선 그래프 만들 기 ( MpAndroidChart ) 
 [ Android ] 설치 앱 아이콘 바꾸 기 
 2017 . 10 . 29 10 : 51 
 이번 에 는 안드로이드 스튜디오 설치 아이콘 을 바꾸 는 방법 에 대해서 한 번 알아보 도록 하 겠 습니다 . 안드로이드 앱 을 다운 받 을 경우 생기 는 아이콘 을 바꾸 는 방법 입니다 . 이 아이콘 을 바꾸 지 않 았 을 경우 에 는 아래 사진 의 왼쪽 과 같 은 아이콘 이 나오 는데요 . 이 아이콘 을 사진 의 오른쪽 처럼 바꾸 는 방법 입니다 . 앞선 포스팅 과 같이 이번 에 도 아주 간단 한 방법 이 니 쉽 게 따라 하 실 수 있 을 거 라고 생각 됩니다 . 안드로이드 설치 앱 아이콘 바꾸 기 1 . 먼저 설치 아이콘 을 그림판 이나 포토샵 으로 한 땀 한 땀 만들 어 줍니다 . 저 는 이렇게 한번 만들 어 봤 습니다 . 2 . 그 다음 이 파일 을 drawable 에 icon . png 라는 이름 으로 넣 어 주 도록 하 겠 습니다 . Manifest . xml 3 . Manifest . xml 로 가 셔서 위 에 있 는 소스 처럼 바꾸 어 줍니다 . android . . 
 [ Android ] 로딩 화면 구현 하 기 Splash 
 2017 . 10 . 28 12 : 06 
 [ Android ] Fragment 에서 구글 클라우드 비전 사용 하 기 
 2017 . 10 . 27 23 : 25 
 구글 클라우드 비전 이란 ? 구글 클라우드 비전 이란 2016 년 구글 에서 공개 한 기계 학습 기반 이미지 인식 API 입니다 . 이미지 파일 에서 얼굴 인식 , 텍스트 인식 , 사물 , 상품 로고 , 꽃 , 랜드마크 인식 그리고 사람 인 경우 기쁨 , 슬픔 , 분노 등 다양 한 감정 식별 도 가능 합니다 . 제 가 직접 사용 해 본 결과 인식 률 이 완벽 하 지 는 않 았 으나 어플리케이션 을 개발 할 경우 굉장히 유용 한 API 인 것 만 은 틀림없 는 듯 합니다 . 그럼 Google Cloud Vision API 를 사용 하 는 방법 에 대해서 한 번 알아보 도록 하 겠 습니다 . 구글 클라우드 비전 API 키 발급 및 사용법 1 . 구글 클라우드 플랫 폼 API 를 사용 하 면 먼저 API 키 를 발급 받 아야 합니다 . 구글 클라우드 API 받 기 링크 바로 가 기 위 사이트 에 들어가 셔서 위 에 보이 시 는 빨간색 박스 안 의 아이콘 을 . . 
 [ Android ] ListView 에 EditText 넣 기 
 2017 . 10 . 25 16 : 49 
 안녕 하 세요 이번 에 는 리스트 뷰 에 EditText 를 넣 어 보 는 작업 을 한번 해 보 도록 하 겠 습니다 . 개발 을 하 다가 보 면 사용 자 에게 정보 를 입력 고싶 을 때 리스트 뷰 안 에 EditText 를 넣 고 싶 은 경우 가 생깁니다 . 하 지만 EditText 를 ListView 안 에 집어넣 으면 포커스 가 뒤죽박죽 이 되 어 버려 굉장히 곤란 한 상황 에 빠지 게 되 는데요 . 그 이유 는 ListView 는 목록 을 스크롤 할 때 메모리 를 아끼 기 위해 ListItem 의 뷰 를 재 사용 하 기 때문 입니다 . 그래서 포커스 가 바뀌 기 전 에 입력 한 값 을 다른 변수 에 저장 을 해 줘야 하 는데 TextWatcher 라는 함수 를 통해서 이 방법 을 구현 할 수 있 습니다 . ListView 에 EditText 넣 기 예제 파일 올려 드립니다 . 예 제 파일 은 동적 으로 추가 삭제 되 는 EditText 리스트 뷰 입니다 . 유용 하 게 . .