본문 바로가기

안드로이드47

#6 해상도 별 레이아웃 대응하기 1. 해상도 별 위치 대응하기 1-1. 문제 제시 1-2. ConstraintLayout을 사용하자 1-3. dpi별로 레이아웃 나누기 1-4. dpi별로 value값 설정하기 1-5. GuideLine 사용하기 1-6. ScalableLayout 2. 해상도 별 크기 대응하기 3. 곡선 처리 2021/12/04 ~ 2021/12/05 개발 내용 1. 해상도 별 위치 대응하기 1-1. 문제 제시 우선 임시로 대충 위치를 잡아보기 위해 텍스트 뷰를 이미지 위에 올려보았다. 스샷만 봤을 때는 문제가 없어 보이지만 이게 문제점이... 다른 스마트폰에서는 위치가 조금씩 바뀐다는 것이다. 해상도가 제각각이다보니 이걸 해결하기가 쉽지 않았다. 그래서 오늘 하루동안 고민했던 것들, 공부했던 것들 그리고 해결방법을 기.. 2021. 12. 5.
#5 서명 저장하기와 불러오는 방법 고민하기 1. 이미지 위에 서명 올리기 1-1. include 사용 1-2. 대체 왜 저장된 서명을 불러오지 못하는 건데? 2. 서명을 불러오는 방법 2-1. 좌표 값 이용 2-2. 애초에 저장할 때 사진으로 저장하기 2021/12/01 ~ 2021/12/03 개발 내용 1. 이미지 위에 서명 올리기 1-1. include 사용 서명을 그리고 저장하는 것 까지는 했으니까 이젠 서명을 불러올 차례이다. 시작하기 전에 이 부분을 어떻게 해결해나가야 할지 고민이 많이 됐다. 사용자가 서명을 할 땐 스마트폰을 가로로 잡고 서명을 하기 때문에 가로 크기에 맞는 좌표들이 저장되는데 이걸 대체 세로 화면에 맞춰서 보여주려면 비율을 어떻게 조정해야 하지? 심지어 크기도 확 줄여서 서명란에 맞게 보여줘야 하는데 비율을 어떻게.... 2021. 12. 4.
#4 그림 그리기와 TypeConverter 사용 1. 그림 그리기 1-1. DrawSample.kt 1-2. fragment_sign.xml 1-3. SignFragment.kt 2. TypeConverter 2021/11/18 개발 내용 1. 그림 그리기 1-1. DrawSample.kt 안드로이드에서 그림판을 만들어 본 경험이 있어서 싸인 기능을 구현하는 데 도움이 많이 됐다. 싸인 특성상 색도 검은색으로 통일, 굵기도 통일, 모양도 통일이라서 간단했다. 버튼은 간단하게 전체 지우기 버튼 / 저장 버튼만 넣어두었다. (아이콘이 안 이뻐서 마음에 안 들지만 디자인은 나중에 생각하자) class DrawSample : View { constructor(context: Context?, attrs: AttributeSet?) : super(context.. 2021. 12. 2.
#1 서명 앱 만들기 (구상하기) 1. 앱 소개 1-1. 기획 의도 1-2. 장점 2. 방법 고민해보기 3. 계획 1. 앱 소개 1-1. 기획 의도 오랜만에 토이 프로젝트를 기획해보았다. 다른 사람들한테 도움이 되는 앱을 만들 때가 제일 재밌고 보람차서 이번에도 그런 앱을 준비했다. 나는 현재 SSAFY 교육을 수강하고 있는데, 한 달에 한 번 교육지원금 관련 파일을 제출해야 한다. 근데 그 과정이 여간 귀찮은 게 아니다. edu 사이트로 들어가 양식 파일을 받고 핸드폰으로 서명을 해 word에 첨부시킨다음 화면을 캡처해 컴퓨터로 옮겨 1:1 비율로 편집한 다음 다시 핸드폰으로 옮겨 문자로 온 구글 드라이브 링크를 클릭해 업로드한다. 한 달에 한 번만 하면 되긴 하지만 이게 얼마나 귀찮던지... 그래서 이걸 쉽게 해결할 수 있는 앱을 만.. 2021. 11. 2.
startActivityForResult는 왜 deprecated 되었는가? 1. startActivityForResult 2. onActivityResult 3. 왜 deprecated 되었는가? 1. startActivityForResult 예전에는 호출한 액티비티로부터 결과를 받아오기 위해 startActivityForResult를 사용했다. 하지만 2020년 5월을 기준으로 deprecated 되고 registerForActivityResult 메서드가 생겨났다. 왜 deprecated가 되었는지 알아보기 위해 먼저 이전에 사용하던 방법에 대해 알아보자. btn.setOnClickListener { val intent = Intent(this, WriteActivity::class.java) startActivityForResult(intent, 0) } 위 코드는 버튼을.. 2021. 9. 28.