본문 바로가기

전체 글

(56)
[Android] Google 로그인 버튼 만들기(브랜드 가이드 적용) OAuth2.0 인터페이스를 활용한 SNS로그인 방식을 구현할 때는 동작 구현도 중요하지만 각 플랫폼의 가이드를 잘 읽어봐야 한다. 그 중 구글의 버튼 양식을 적용하는 과정을 정리할 겸 담아본다. https://developers.google.com/identity/branding-guidelines?hl=ko 위 링크가 공식문서다. 어디서나 같은 경험을 제공하기 위해 상세한 가이드가 제작돼있다. 1. 공식문서 링크에서 '파일 다운로드'를 눌러 양식들을 다운받는다. 양식을 잘 보면 android 용 해상도별 png 파일 묶음이 있고 web 용 svg 파일들이 있고 ios 용 해상도별 파일 묶음도 있다. 2. 머터리얼에서 Roboto 폰트를 다운받고 추가한다. https://fonts.google.com/..
[Android] 앱 아이콘 제대로 만들기 급한거 먼저 배우고 구현해보느라 앱 아이콘의 자세한 부분을 그동안 지나치고 있었는데, 허술한 부분이 여럿 보여서 제대로 살펴보게 되었다. 일단 공식 설명이 존재한다. https://developer.android.com/codelabs/basic-android-kotlin-training-change-app-icon#0 단계별로 배울 수 있는 튜토리얼이다. 여기서 중요한 것은 sdk 26 버전부터 anydpi 개념이 추가돼서 backgorund, foreground 파일을 각각 추가하여 모든 해상도에 대응이 가능하다 (mipmap-anydpi-v26 경로의 의의) 26 밑으로는 알던대로 mipmap 경로에 해상도별 png 이미지가 필요하다. 아이콘의 핵심 이미지가 보이는 영역은 지름이 66dp 인 중앙의..
[Android] 앱 통일성을 위한 초기 설정 앱에 전체적인 테마 설정과 통일성을 위해서는 준비작업이 조금 필요하다. 지금 하고 있는 간단한 작업을 적어두려 한다. 처음 앱 프로젝트를 만들었을 때, 1. 폰트 추가 res 폴더 하위에 font 폴더를 만들고, 파일명에 한글이나 대문자가 없는 ttf 폰트 파일들을 추가한다. 이 폰트들을 묶는 fonts.xml 파일도 만들고 내부 내용은 이렇다. fonts.xml 2. colors.xml 정리 맨 처음 프로젝트 만들면 purple 시리즈로 colors 파일이 오염돼있다(?) 쓸 색상들만 적용해주자. 어차피 theme 파일에서만 참조하고 있으니 프로젝트 빌드에는 문제 없다. values/colors.xml #606060 #F8F8F8 #BB77FF #E69FFF #FAE4FF 3. colors.xml(ni..
[Android]RememberU 레이아웃 및 디자인 과정 공개발행할 일은 없을 것 같지만 디자인 툴을 전문적으로 쓰지는 않는다. 내가 미루고 미루다 미치도록 필요해서 만드는 앱인 만큼 기획을 후딱 끝내고 적절히 레이아웃을 잡은 뒤 드리블 등에서 디자인을 참고해 슥 씌우기만 하는 글이다. Layout 필요한 화면은 잠금화면/로그인화면/메인화면/설정화면/지인추가화면/지인상세화면/메모추가화면 총 7개인데 속도를 높이려면 좀 줄여야겠다. 일단 잠금화면, 메모추가화면을 액티비티로 빼지 말아야겠다. 디자인된 컨셉 꽤 깔끔한 느낌을 살리고 포인트 컬러도 적절히 활용한 것 같다.
[Android] 인맥관리 앱 기획 <Re:member U> 기획 배경 나는 금붕어다. 이 친구가 가족구성이 어떻게 됐는지, 뭐에 관심이 있었는지, 뭘 좋아하고 싫어하는지, 조금만 관심이 없으면 다 잊어버린다. 여친한테도 그런다. 근데 이걸 어디에 정리하자니 죄다 텍스트로 줄바꿈해서 사람마다 만들랴? 명함관리 같은 딱딱한거 말고 근사한 UI에 너무나 편리한 조작성을 가진 인맥관리 앱이 필요했다. 니즈 솔직히 잘 모르겠다. 일단 지구상에 아무도 필요없다고 해도 내가 못 참겠다. 그래도 예의상 좀 보니 자연어로 검색했을 때는 찾는 사람이 좀 있는데 키워드 광고로 찾으려니 '인맥관리'는 거의 비즈니스 목적으로 보이고 친구관리 정도로 조금씩 찾는 니즈가 있어보였다. 네이밍 내 니즈는 간단한다 '당신을 기억해서 뻘쭘한 상황을 안 만들고 싶어' Re:member U 로 정했..
[Android] Dialog match_parent 맨날 잊어버려서 정리해둔다. dialog 를 상속받아 레이아웃을 적용시키면 미리보기에서는 Match_parent 가 적용되지만 실제 다이얼로그는 부모 뷰에 붙지 않기 때문에 쪼그라든다. 스택오버플로를 보면 대표적으로 2가지 방법이 있다. https://stackoverflow.com/questions/28513616/android-get-full-width-for-custom-dialog style 에서 android:Theme.Holo.Dialog 를 상속받아서 minor width 와 major width 를 percentage 로 조절하는 방법과 Dialog.getWindow().setLayout(width, height) 메서드 안에 LayoutParams의 속성을 넣어서 가로와 세로를 조절하는 ..
[앱 기획] 주식 스윙매매일지 컨셉 기획 https://notefolio.net/cider/316213 - 참고한 기획 레퍼런스 [앱 개발 배경(Background)] 키워드 : 매매일지, 주식노트, 주식일지, 매매일기, 주식일기 ... 주식을 하다보니 단타와 장기투자의 중심인 스윙방식을 쓰게 됐고 내 사고방식으로는 매수묶음을 기준으로 매도 했을 때 손익을 판단하는데 (ex. 10원 * 3개를 1일에 샀고 더 내려서 5원 * 5개를 2일에 샀다고 한다면 종목 기준에서는 종목 * 8개를 가지고 있을 뿐이지만 매도할 때는 다시 10원으로 올랐을 때 5원 으로 샀던 매수건을 팔았다고 생각하고 이득을 챙긴다는 느낌이다.) 매수단위묶음으로 치는 것. 또한, 이러한 결과들과 생각들을 정리하고 싶어서 아래와 같은 매매일지 양식을 찾아(그림1) 구글 스프레드..
[Android / Java] EditText 비활성화 (enabled 메서드) 아래처럼 메서드를 만들어서 비활성화 된 것 같은 UI 변경 및 EditText.enabled(boolean enable) 로 컨트롤해줬다. 이미 키보드가 올라온 상태에서 비활성화 하는 경우도 있을 수 있으니 InputMethodManager 를 사용해서 키보드를 내리라는 명령도 첨가했다