목록Develop (60)
밍쯔와 안작고 안귀여운 에러들🖤

scrollview 안에서는 firstVisibleItem, visibleItemCount 등등이 안된다! 다 한번에 로드되는거임,,,, 왤케 무한 스크롤링에서 페이징이 제대로 작동안하고 버벅거리나 했더니••• 이게 다 구조때문,,,! [문제] scrollView 안에 recyclerview를 생성할 경우, recyclerview가 한번에 생성되기 때문에 이미지를 전부 로딩해서 size가 많으면 캐싱 문제가 생겨서 엄청 버벅거린다. 왜 scrollview 안에 recyclerview를 만드는 멍청한 짓을해? 라고 생각하실 수도 있습니다••• 디자인 상으로 아이템 리스트 위에 구분선이 있는데, 스크롤시 함께 움직여야해서 그냥 단순하게 넣었더니 리스트의 개수가 100개 정도되는 순간 엄청 버벅거리는걸 발견하..

토글 버튼을 제작해야 했는데 생각보다 돌고 돌았다..! 토글이라서 material의 toggleGroup만 생각했는데 생각보다 제약이 많았다. 왼쪽의 형태를 원했는데 material에서 적용하려면, 오른쪽 처럼 토글 느낌이 나게 만들수가 없다,,,!! 찾고찾고 삽질하고 삽질해서 tabLayout으로 만드는 방법으로 성공! [코드] toggle in xml selector_btn_toggle_pink btn_toggle_on btn_toggle_off [참고] https://stackoverflow.com/questions/69431976/how-to-make-customized-material-toggle-button How to make customized Material Toggle Button? I..
1. Class에서 setPaintFlags() 사용 적용하고 하는 TextView에 setPaintFlags()에 Paint.UNDERLINE_TEXT_FLAG를 설정하면 된다. binding.textViewName.paintFlags = Paint.UNDERLINE_TEXT_FLAG 2. SpannableString 클래스를 사용 원하는 Strig을 SpannableString로 선언한다. setSpan()에 new UnderlineSpan()을 적용한다. TextView.setText() 적용한다. var mSpannableString = SpannableString("msg") mSpannableString.setSpan(UnderlineSpan(), 0,mSpannableString.length..
이번에 서브 프로젝트 하면서, 디자이너분이 만들어주신 캘린더가 웬만한 라이브러리들의 커스텀으로는 한계가 있는 것 같아서 그냥 전체를 커스텀 해보려고 한다. 시도해보는 과정들을 기록해갈 예정! 1. RecyclerView로 전체 커스텀 어떤분이 recyclerview로 만드신 방법을 보고, 마침 지금 플젝도 MVVM모델이고 adapter 사용은 익숙해서, 이 방법을 먼저 시도해볼 것이다. https://namget.tistory.com/entry/%EC%95%88%EB%93%9C%EB%A1%9C%EC%9D%B4%EB%93%9C-%EC%95%88%EB%93%9C%EB%A1%9C%EC%9D%B4%EB%93%9C-%EC%BB%A4%EC%8A%A4%ED%85%80-%EB%8B%AC%EB%A0%A5-%EC%98%8..

[에러/문제] tdd 공부를 하면서 이클립스에 junit5를 빌드해서 쓰는데, 요런 에러를 만났다. java.lang.NoClassDefFoundError: org/junit/platform/commons/util/Preconditions ... [해결] 간단! '프로젝트 -> properties -> Java build Path' 로 이동 Modulepath에 들어 있는 JUnit5를 아래 'Classpath'로 이동! 그럼 문제 해결~~
targetSdk 31로 올리고, 카카오SDK 버전도 새롭게 올려주고 난 뒤,,,, 뜬금없이 초기 화면에서 에러가 발생했다..! ((어이없어)) 검색해보니 초기화 과정에서 문제가 생긴거라던데, 계속 문제가 없다가 갑자기 발생한게 뭔가 업데이트 올리면서 수면 위로 드러난 문제인 것 같다. (원인) 카카오 네이티브 모듈이 초기화 되어 패키지로 등록되기 전에 다른 네이티브 모듈이 쓰레드를 생성하여 resume시키는 문제였습니다. KakaoSDK 에서 안드로이드 액티비티 생명주기 중에, onResume 단계에서 session을 확인하고 설정되어있지 않으면 예외를 발생시킵니다. (수정전) import com.kakao.sdk.common.KakaoSdk; public void onCreate() { super.o..

웹개발자분이 svg로 받는거 간단할거라는 말에 네이티브에서 svg 아이콘 적용시키는 대신, 백엔드 개발자분이 svg를 url로 보내주는 방식으로 api를 짰는데,,,,, 거짓말,,,,, 간단하지 않쟈나 😭 기존 glide로는 svg를 동적으로 바인딩 시킬 수 없었고,,, 조큼 애먹었다,,, 총 2가지 문제가 있었다. =============== 1. Glide로 SVG를 넣기 2. api 30 이하(아마)에서 리사이징한 svg가 깨지는 현상 =============== 1번은 구글링하고 glide의 샘플 코드를 보고 해결했지만, 2번에서 너무너무 당황했고,,, svg가 왜 깨져,,,,!!!! 했던,,,, 1. Glide로 SVG를 넣기 아래 링크를 걸어둔 깃의 샘플 코드를 프로젝트에 넣고 모듈까지 샘플 ..
1. android:exported 명시 manifest의 merged Manifest에 뜨는 error들을 모두 확인하고 exported = "true/false" 처리를 모두 해줌. [참고] https://developer.android.com/guide/topics/manifest/activity-element#exported Android 개발자 | Android Developers 애플리케이션의 시각적 사용자 인터페이스 일부를 구현하는 활동(Activity 서브클래스)을 선언합니다. 모든 활동은 매니페스트 파일의 {@code} 요소로 나타내야 합니다. 여기에 선언되지 않은 활동 developer.android.com 2. "Targeting S+ (version 31 and above) requ..