Android

    디버깅 특강

    - 보여야하는데 보이지 않는 에러 -> 말이 안됨, 역설 - 모든 역설은 강조 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..

    코루틴coroutine &플로우flow 학습 했던거 회고

    이번에 미루고 미뤄왔던 코루틴을 공부해봤다. 이번에 공부했던 자료는 아래와 같다. - 안드로이드 공식문서 - 코틀린홈에서 공식문서 - 안드로이드 코드랩 2개 코루틴 코드랩은 생각보다 별로였다. 하지만 코드랩에서 코루틴이 main-safe를 쉽게 만들 수 있다는 것을 일깨워준다. 예전에 봤던 컴포즈 basic코드랩에 있는 코루틴 코드랩이, 코루틴 입문하기에 가장 쉽고 적합한거 같다. 코루틴 처음하면, 아래 링크에서 코루틴 관련 내용을 학습하면 좋을 듯 하다. https://developer.android.com/courses/pathways/android-basics-compose-unit-5-pathway-1 인터넷에서 데이터 가져오기 | Android Basics Compose - Get data fr..