Android
오늘 발견한 노트북 이용자를 위한 안드로이드 스튜디오 소소한 팁.
오늘 안스에서 찾은 기능인데, 노트북 화면 단일로 쓸 때 좋은 기능인것 같다. 1. compact modeview - appearance - compact mode노트북 화면에서 창이 좁다고 느껴질때,안스의 아이콘, 각종 글자들과 여백들이 최소화되어 공간을 확보한다. (에디터 내의 소스 코드 여백은 그대로임)글자가 너무 작아져서 눈이 좀 아픈것 같은데, 이따금씩 써봐야겠다. 2. Hide All Windows (커맨드 or 컨트롤 + 쉬프트 + f12)widow - active tool window - hide all windows에디터에서 파일명을 더블클릭하면 에디터를 제외한 창이 닫히고, 에디터에 집중할 수 있는기능인데,혹시나 단축키가 있나싶어서, chatgpt에게 물어보면서 찾았다.같은 메뉴쪽에서..
디버깅 특강
- 보여야하는데 보이지 않는 에러 -> 말이 안됨, 역설 - 모든 역설은 강조 or 논리전개가 잘못됨. -> 생각을 바꿔야함. (실제 역설이 있을 가능성도 있음, 확률이 극히 낮지만) - 프로그래밍에서의 역설은 강조는 아니고, 논리 전개가 잘못됨. - 프로그래밍에서 언어는 자연어(국어, 영어)와는 다르게, 매우 엄격한 규칙을 가지고 있음. ===================== - 프로그래밍 에러(컴파일, 런타임, 논리적)는 모두 역설이다. - 이 에러(역설)의 문제를 찾아나가는게 디버깅이다. 디버깅이 안되는 가장 큰 이유1 : 내가 아는게 부족해서, -> 다시 처음부터 조립 / 학습 디버깅이 안되는 가장 큰 이유2 : 내가 만들어낸 역설이 아니라서, -> 임포트 확인, 클린 빌드, 인발리드캐시, 껏다 ..
Button의 backgroundTint, 글자색 바꾸기 (style, selector 사용)
안드로이드에서, Button의 backgroundTint, 글자색 바꾸기 (style, selector 사용) * 필자가 글쓰기 편하도록 음씀체로 작성되었습니다. 파일 만들때는 color리소스에 color추가 -> selector -> style -> Button에 참조거는 순으로 되겠지만, Button -> style -> selector순으로 블로깅했음, 중간에 빨간불 나는거 보고 파일 생성하면 됨. 필자는 파일명을 좀 길게 지었고, 이 게시물은 친절한 설명은 아니고, 이미 해봤던 사람들 코드 참고하라고 올렸음. 이게 어려운거는 아닌데 귀찮고, 구글링하게 되면 끝도없이 스택오버플로랑, 웹페이지 보게 되니까 그냥 아무 블로그나 잡아서 만드는게 나은 듯 함. chatgpt한테 만들어 달라니까 이거는 잘..
테마 보면서 머티리얼 디자인에 대해 궁금했던것들을
chatgpt에게 물어보았다. Q. 안드로이브 뷰 시스템에서, Theme.MaterialComponents.DayNight.DarkActionBar를 테마로 받아쓰는게 실무에서 머티리얼 디자인을하는 것과 관련이 있는건가? 구글이 제시하는 머티리얼 디자인하고도 관련이 있나? =============================== Q. 구글이 제시한 머티리얼 디자인에 버전이 있는거로 아는데, 저 테마가 어느 버전하고 관련이 있을까? =============================== Q. 그러면, 실무에서 머티리얼 디자인을 한다면, 저 테마만 사용하는게 아니라, 구글이 제시해둔 가이드라인으로 직접 더 만들어내겠네?
안드로이드 버튼 android:src와 app:srcCompat 두 속성의 차이점 (with. chatgpt)
chatgpt에게 물어보았다. ===================================== Q. 내 질문 -> 안드로이드 개발에서 버튼에 이미지를 추가할때, android:src와 app:srcCompat 두 속성의 차이점이 뭐야? ===================================== A. chatgpt -> android:src와 app:srcCompat는 안드로이드 앱 개발에서 이미지를 버튼 또는 다른 뷰에 추가할 때 사용되는 속성입니다. 이 두 가지의 주요 차이점은 다음과 같습니다: 1. 호환성: android:src: 이 속성은 안드로이드 API 레벨 4부터 도입되었습니다. 이는 안드로이드 기본 이미지 뷰에 사용되는 속성이며, 벡터 이미지를 지원하지 않습니다. app:srcC..
android android:gravity와 android:layout_gravity의 차이
뷰xmml에서 저 옵션을 자꾸 까먹어서, 한번 적어두려고 한다. android:layout_gravity="center" -> 뷰그룹 내에, 뷰가 있을때, 뷰에 넣는 옵션 뷰를 뷰그룹의 어디로 위치시킬까? 를 생각하면 되고 android:gravity="center" -> 뷰/뷰그룹 내부의 컨텐츠를 어디에 위치시킬까? 를 생각하면 된다. button에 설정한 layout_gravity에 의해서, cardview의 center에 위치하게 되었다. button에 설정한 gravity에 의해서, botton내부의 글자가 end | bottom으로 이동함. 그냥 글자그대로 직관적으로 생각해서, gravity는 내 컨텐츠만 생각하면 되겠고, layout_gravity는 레이아웃에 대해서 내가 어디로 갈까를 생각하..
안드로이드 스튜디오 에디터에서 깃 커밋한 사람 이름 안보이게
Settings - Inlay Hints - Code vision에서 Code author 체크해제 또는 에디터에서 바로 "우클릭"하면 옵션이 보임. 깃을 혼자 쓰는데, 소스에서 커밋한 사람 이름이 뜨니 뭔가 거슬렸다. 그래도 이 기능을 써야하는데 거슬린다면, position옵션을 top말고 right로 하는게 좋을듯?
안스에서 run시, logcat탭 먼저 올라오게 하기
(현재 안스버전 Android Studio Flamingo | 2022.2.1 기준으로) 안드로이드 스튜디오에서 앱을 run하고나면 run탭이 뜨는데, logcat탭이 먼저 올라오게 할 수 없나? 1. Run - Edit Configuration..로 들어간다. (더블 쉬프트 누르고 Run..관련해서 찾아도 된다, 저 옵션으로 들어가는 방법은 여러 방법이 있을 것이다.) 2. Edit Run configuration : ‘app’에서 miscellaneous (잡다한)에서 logcat - show logcat automatically라는게 보인다. → 그렇다 이게 내가 원하는 기능이다. 이제 Run하면 바로 Run탭이 아니라, 로그캣이 올라온다. 하지만! 근데 이거는 프로젝트마다-모듈마다 각각 적용일듯한..
안드로이드 스튜디오 새 로그캣에서 프로세스의 상태를 보는 방법.
https://stackoverflow.com/a/76285375/12728552 Check process status in new logcat of Android Studio Recently android studio has introduced a new Logcat. The previous one had a feature through which we could select a specific process according to its name. That also showed if the process was alive... stackoverflow.com 위의 질문에 대해서 내가 스택오버플로 답변을 달아뒀다. 새 로그캣은 프로세스 상태를 볼 수 있는 ui가 사라진거 같고, 로그에 - PROCESS..
RecyclerView를 연습해보았다 (공부한 자료 & 회고)
이번에 리싸이클러뷰 공부를 다시 해봤다. 옛날 코드랩자료가 내용이 좋은거 같아서 해봤는데, 소스가 오래된거라 빌드에 문제가 있는부분이 있었다. 가능한 옛날 소스로 공부를 하지 않도록 해야겠다. 기존에 제대로 몰랐던 부분을 제대로 알게 되는 부분도 있었다. 리싸이클러뷰를 단순히 만드는거는 쉽지만, 여러 기능을 추가하게 되면 복잡해진다. 그리고 리싸이클러뷰 구현하는 부분은 좀 쉬웠는데, 데이터바인딩, 네이게이션도 제대로 모르니 전체적으로 마냥 쉽지는 않았다. 아래는 이번에 공부했던 자료들 링크와 그 링크에서 배운점을 붉은색으로 강조해서 표시해두었다. 공부자료들 ======================================== // 안드 공식홈 - docs - UI Guide (Create dynami..