Android(Kotlin) 26

[절대 잊지말자] Activity에서 transaction된 Fragment에 접근할때

이걸 해결 못해서 프로그램 구조부터 뜯어고쳤었는데 결국 이걸 해결해야만 하는 문제에 부딪혀서 찾아봤다 다들 activity에서 fragment의 함수를 호출할 땐 fragmentManager의 findfragmentbyid 혹은 findfragmentbytag로 찾아야 한다는 건 알 것이다 하지만 내 경우처럼 위의 findfragment가 null을 반환해서 전혀 접근하지 못하는 사람들이 많았을 텐데 android - GetFragmentManager.findFragmentByTag() returns null - Stack Overflow GetFragmentManager.findFragmentByTag() returns null getFragmentManager().beginTransaction() ...

Android(Kotlin) 2021.06.16

ViewPager2 에 elevation이 적용 안될때

마무리 UI 작업 중 뷰 페이저에 elevation을 할당했는데 전혀 적용되질 않았다 할당된 뷰가 문제인가? 하고 애꿎은 자식 뷰의 background만 건들다가 ViewPager2 자체에 background 값을 전혀 할당하지 않은걸 발견... 대충 화이트 넣어보니 잘 되더라 ㅠㅠ 단, 뷰페이저 자체는 네모난 모양이기 때문에 모서리를 둥글게 하려면 drawable에서 둥근 모서리를 만든다음 넣어주도록 하자

Android(Kotlin) 2021.06.15

기기 자체 설정의 글씨 크기에 대응하는 레이아웃 짜기 - textView

앱 제작을 하면서 나름 열심히 검수했다고 생각했다 AVD로는 Pixel3, 실기기로는 Galaxy Note9를 사용하여 나름대로 레이아웃 구성을 잘 했다고 생각했다 기대에 부푼 마음에 엄마께 사용해보시라고 설치해드렸는데 이게 왠일? 레이아웃이 전체적으로 다 망가져있었다 알고 보니 핸드폰 자체 설정에서 글씨 크기를 크게 해 두시고 쓰시던 중이라 작은 글씨 크기에만 맞춘 내 앱은 당연히 레이아웃이 엉망진창이 된 것이었다. 그때부터 다른 유명 앱들을 보니 보이더라 텍스트는 한 줄에 하나씩, 각 레이아웃별로 충분히 떨어진 거리 다 글씨 크기나 화면 크기 조절에 대응할 수 있도록 만들어진 것이었다. 일단 처음으로 한건 텍스트뷰를 고치는 것이었다. 알고 보니 텍스트뷰에는 이미 충분히 좋은 기능이 있더라 바로 and..

Android(Kotlin) 2021.06.13

프래그먼트는 왜 parameter를 받으면 안되는걸까?

앱에 프래그먼트를 추가하다가 Unable to instantiate fragment 오류를 만났다 처음 보는 오류에 당황하다가 검색해서 나온 정답은 프래그먼트는 기본 생성자만 써야 한다고 하는 게 아닌가? 다시 말해 class TestFragment(something:Int):Fragment()로 프래그먼트를 만들고 val something = 1 val testFragment = TestFragment(something) 처럼 쓰는 게 불가능하다는 것 근데 막상 작성해보면 오류는 나지 않을 것이다 단순히 프래그먼트를 표시할 땐 parameter를 넘겨도 되는 듯하다(권장하진 않는다) 그럼 저 오류는 어디서 만나게 되는 걸까? 나의 경우는 MainActivity에서 생성만 해두고 사용하지 않은 프래그먼트..

Android(Kotlin) 2021.06.12