전체보기 (217) 썸네일형 리스트형 [And] 달력 만들기 - recyclerview 활용 달력을 5번정도 구현했는데, 그때마다 '어떻게 하면 조금 더 효율적일까'를 고민했고 최근에 식물일기에 달력 기능을 추가할때도 고민했습니다. 혹시 다음에 또 구현하게 된다면 보다 빠른 의사결정을 위해 포스팅합니다. 본 포스팅은 달력을 구현하는데 있어서 방향성을 잡는데 도움이 되도록 작성했습니다. ( Gridelayout으로 만든 시간표 포스팅도 구경하고 가세요 ! ) | 달력 레이아웃 구현 달력에는 매번 스와이프 기능을 넣었기 때문에 viewpager는 기본으로 하고, 세부 UI 구현은 크게 3가지로 나눠볼 수 있습니다. 1. Recyclerview로 만듬 2. textview로 하나씩 모두 그림 2-1. customView로 만들어서 사용 ( 또는 달력 전용 fragment ) 2-2. 구현하는 엑티비티.. [And] Drawable 과 Mipmap 폴더 활용하기 이미 익숙하게 사용하는 사람들도 있겠지만 저도 처음엔 많이 두 폴더의 사용이 헷갈려 잘못 사용하고 있었습니다. 오늘 포스팅에서는 정의와 제가 사용하고 있는 방법을 공유하고자 합니다. Mipmap 프로젝트를 생성하면 같은 이름의 폴더가 밀도별로 5개가 생성됩니다. 생성된 폴더엔 'ic_launcher' 라는 이미지가 각각 들어가 있는데 클릭해보면 크기가 조금씩 다릅니다. 해상도에 관한 자세한 내용은 추가 검색을 통해 어떤 차이가 있는지 찾아보셔서 어느정도 개념을 익혀야 합니다. 구글에서도 mipmap 폴더는 아이콘 이미지를 보관하는 용도로 정의하고 있으며 각 해상도는 디바이스에서 사용하는 런처마다 다르게 대응됩니다. 디바이스 한줄에 3개의 아이콘을 노출하는 런처를 사용한다면 조금 더 큰 해상도의 이미지를 .. [And]출시 예약으로 배포 시점 조정하기! apk파일을 업로드하면 구글에서 승인을 해야 사용자들이 스토어를 통해 다운로드 받을 수 있습니다. 근데 승인 시점을 정확하게 알수 없고 앱마다 소요되는 시간도 다르고 첫출시냐 업데이트냐에 따라 다릅니다. ( 공식 문서는 확인하지 못했지만 여러 경험담들을 종합해봤을 경우에 해당 ) 만약 앱 업데이트 권고 푸시를 발송한다면 출시시점을 정확하게 알아야 합니다. 그럴때 구글 콘솔에서 제공하는 '게시개요' 기능을 이용하면 원하는 시점에 앱을 배포할 수 있습니다. >> 게시개요 개발자 콘솔에서 앱을 선택하여 대시보드로 진입하면 좌측 메뉴에 '개시개요' 를 찾을 수 있습니다. >> 설정 'on' 친숙하지 않은 단어들이 사용돼 조금 혼란스럽지만 '관리형 게시 상태' 에 관리를 클릭하셔서 기본 off로 되어 있는걸 on.. [And] NumberPicker, DatePicker 에 입력된 값 가져오기 ( EditText ) NumberPicker 나 DatePicker 는 숫자나 텍스트를 휠처럼 선택해 사용자들에게 편리한 ui를 제공합니다. 하지만 초기 보여지는 값과 사용자가 선택하고자 하는 값의 차이가 큰 경우 오히려 불편함을 느끼는 유저들도 많습니다. ( 저 포함 ) 그럴경우 휠을 사용하지 않고 숫자를 클릭하면 EditText로 변해 값을 입력할 수 있습니다. 일반적으로 휠을 이용해 값을 변동할 경우 'OnDateChangeListener' 로 값이 변할때 트래킹이 가능하지만 EditText로 입력하는 경우는 다른 방법으로 값을 가져와야 합니다. NumberPicker 구현 방법은 제 포스팅을 참고 해주세요. >> EditText로 입력된 값 가져오기 아래는 제가 개발한 식물일기의 일부 화면을 캡쳐한 사진입니다. 사진의.. [Android] 외국인 대상 광고 플랫폼 - MoPub 배너 다국어 출시하면서 외국 사용자들에게 적합한 광고 sdk를 찾다가 추가하게 됐습니다. 효율에대한 내용은 추후에 올리도록 하겠습니다. 그리고 모펍은 minSdk 19 이상인 앱에만 추가할 수 있으니 참고해주세요. >> 앱 추가 먼저 모펍 광고를 추가하려면 구글스토어에 출시된 상태여야 합니다. 공식 사이트에서 회원가입 후 진행해주세요, 회원 가입 이후 상단 우측에 'New APP' 버튼을 클릭하세요 마켓에 출시되어 있는 앱의 주소를 적으세요 광고 유닛 추가 저는 포맷으로 배너를 선택했습니다. 그리고 이름외 다른 옵션들은 디폴트 값으로 두었습니다. 생성 후 unit id값등 정보들이 나오는데 아래 문구 중 'MoPub Integration suite' > 'ASSISTANT' 를 클릭 해, 적용할 광고 옵션들을.. [Android] Recyclerview 속 Edittext 데이터 유실 해결하기 게시글 작성 기능 구현하면서 사진 업로드 기능을 개발했습니다. 다중 사진을 업로드할때 사진별 코멘트 작성할 수 있는 화면과 같이 한 화면의 동일한 포멧에 Edittext가 여러개 필요한 경우 CustomView를 활용해 코드로 Edittext를 하나씩 추가하거나 Recyclerview를 활용하는 방법이 있습니다. 정답은 없지만 세부 요구 사항과 익숙함 사이에서 방법을 많이 선택하는데 저는 주로 Recyclerview를 활용해 구현했습니다. Recylcerview 특성상 뷰를 재활용 하다보니 Edittext에 작성된 텍스트가 유실되는 이슈가 있어 포스팅을 남깁니다. >> TextWatcher 활용 inner class MemoTextWatcher(var position: Int) : TextWatcher .. [And] Flexbox 라이브러리로 가변적인 UI 구현 - 라이브러리 추천 Textview의 텍스트의 길이가 길어짐에 따라 자동적으로 줄바꿈 되듯이 ViewGroup(Linear, relative, constraint)안에 View들이 차지하는 영역에 따라 줄바꿈 해주는 기능은 기본적으로 ViewGroup으로 구현하긴 어려움이 있습니다. 더군다나 안드로이드의 스크린 사이즈는 정말 많은 종류가 있기 때문에 사실상 완벽하게 모두 대응하긴 어렵기 때문에 다른 개발자들이 미리 만들어놓은 라이브러리를 사용해서 빠르게 개발하는것도 좋은 방법중 하나라고 생각합니다. >> 적용한 사례 Flexbox Ui를 사용한 예로 제가 출시한 '식물일기'란 앱에서 할일을 등록하는 화면입니다. 상단에 할일을 선택하면 아래에 카드형태로 설정할 수 있는 화면이 추가되는 구조로 상단에 할일은 총 4개이고 디바이.. [Android/Kotlin] 커스텀 뷰로 생산성 증가시키기 시간표와 같이 일정 패턴으로 반복된 뷰들을 많이 사용해야하고 그로 인해 코드가 길어지고 복잡해 진다면 커스텀 뷰를 고려해보는게 좋습니다. 커스텀뷰 사용이 불편하시다면 Recyclerview를 이용하는 것도 방법입니다. ( 보여줘야할 뷰들의 갯수가 불규칙적일 경우 recyclerview가 더 적합할 것 같습니다. ) >> 작업이 필요한 View의 형태 개발중인 달력뷰에 사용중인 투두 리스트의 리스트로 체크 박스를 클릭하면 각 체크 박스에 맞는 이미지가 채워지고 텍스트에 줄이 생기도록 개발해야 합니다. Recyclerview만으로도 개발은 가능하지만 다른 화면에서 재사용할 예정이라 커스텀뷰를 활용 했습니다. 나아가 attrs를 활용해 xml 생성시 주어진 옵션으로 각 색과 이미지가 셋팅 되도록 했습니다. >.. 이전 1 ··· 8 9 10 11 12 13 14 ··· 28 다음