Android/커스텀 뷰6 디자인 시스템의 텍스트 크기 문제 해결 경험 ■ 디자인 시스템의 텍스트 크기 문제 해결 경험 Background 사내 디자인 시스템에서 텍스트 크기는 DP(Density Pixel) 단위로 정의되어 있었으며, SP(Scale Pixel) 단위의 크기는 고려되지 않고 있었음. 사내 안드로이드 개발자들은 관습적으로 SP 단위로 개발해왔음. Problem Situation 리딩앤 서비스는 10세 미만의 어린이와 부모가 사용하기 때문에, 안드로이드 디바이스의 폰트 설정을 바꾸는 경우가 종종 있어 고려되지 않았던 SP 단위에 의해 예상하지 못한 UI가 나타나는 문제가 발생함 Troubleshooting 디자이너와 개발자들에게 이 문제를 주도적으로 알리고, 디자인 시스템의 Typography 크기에 대한 규칙을 재 정의하고 수정함 ■ 텍스트 컴포넌트 개선을 .. 2024. 3. 23. CustomBottomSheet CustomBottomSheet 2023. 10. 14. 하이라이트 튜토리얼 커스텀뷰를 만들어보자 이번 글은 위와 같은 원하는 뷰를 선택하여 해당 뷰에 하이라이트를 주는 오버레이 튜토리얼 커스텀 뷰를 만들어보겠다. 먼저 해당 커스텀뷰는 하단 회색 버튼을 누를 시 두번째 사진처럼 원하는 뷰를 제외한 나머지를 회색으로 가려준다. 이 후 화면을 터치하면 세번째 사진 처럼 설정해 주었던 다음번의 뷰에 하이라이트를 잡아주며 더이상 설정한 곳이 없다면 하이라이트를 종료하게 된다. MainActivity.kr package com.example.test import android.os.Bundle import android.view.View import android.view.ViewGroup import androidx.appcompat.app.AppCompatActivity import androidx.con.. 2023. 5. 20. 커스텀 뷰에 Depth를 줄여보자 Android 개발 시 새로운 디바이스와 새로운 OS는 개발자에게 있어서 다양한 시도를 도와주는 부분이기도 한다. 다양한 자원들의 상한선/하한선 등 사용 가능한 경계선의 범위가 점점 넓어지고 있습니다. 그러기에 Android 앱 개발시에 자원을 남용하기 쉽다. 본 글에서는 레이아웃 깊이를 1단계 줄이는 방법 중 하나를 소개한다. 서론 하나의 화면을 구성하는 방법은 작성자에 따라서 다양한 방법으로 결과를 만든다. 그중 레이아웃 작업시에는 XML을 사용해서 구성하는 경우가 대부분이다. Android Studio에 기본적으로 적용된 Lint는 아래와 같다. 단일 XML에서 View Element의 갯수가 80개 이상인 경우 단일 XML에서 레이아웃 깊이가 10-Depth 이상인 경우 1번 경우인 단일 XML에.. 2023. 4. 13. 둥근 모서리를 가진 그라데이션 테두리 사각형 만들기 2023. 3. 29. 커스텀 뷰 만들어보자 안드로이드 시스템은 XML에 정의된 View 태그와 속성을 기반으로 생성된 View 객체와 AttributeSet 객체를 이용해 화면에 View 를 그려준다. 좀더 풀어 쓰면, 레이아웃 XML에 정의된 모든 View 들은 화면에 출력 될 시점에 안드로이드에 의해 View 객체로 변환되어 메모리에 올라가며, 이 때, 각 뷰의 내부 속성(색상, 크기 등)은 AttributeSet 객체로 변환되어 View 클래스 생성자의 매개변수로 전달 된다. 이렇게 생성된 View객체를 안드로이드가 해석하여 화면에 그려준다. 참고로 XML 에 정의된 View 를 객체로 생성해 메모리에 올리는 과정을 Inflate 라고 한다. 해당 뷰 하단의 버튼들을 보면 모두 같은 레이아웃에 아이콘과 텍스트만 다르다는 것을 볼 수 있다. .. 2022. 12. 30. 이전 1 다음