본문 바로가기

ANDROID/UI - UX

(28)
[안드로이드] PorterDuff.Mode로 적용 가능한 다양한 옵션을 활용하자 progress.getIndeterminateDrawable().setColorFilter(Color.rgb(60, 179, 113), android.graphics.PorterDuff.Mode.SRC_IN); 프로그레스 바의 커스텀 색을 입히기 위해 활용했던 android.graphics.PorterDuff.Mode 를 새로 적용한 프로그레스 바의 테마에는 잘 어울리지 않아 다른 모드들이 있는지 찾아보게 되었고 관련되어 정리가 잘 되있는 안드로이드 developer 페이지를 찾았다. 기존에 적용해주던 옵션은 android.graphics.PorterDuff.Mode.MULTIPLY 였는데 하나의 원만 도는 기존 프로그레스 바와 달리 겹쳐서 두 개의 프로그레스 바가 돌아가는 듯한 현상이 생겨 하나의 dr..
[안드로이드] 레이아웃에 동적으로 이미지뷰 추가하기 (ScalableLayout을 활용한 경우) 이미 명시된 이미지뷰의 위치를 애니메이트 하거나 이동시키는 건 어느정도 익숙했지만 동적으로 xml파일로 명시되지 않은 이미지뷰를 원하는 크기와 위치에 추가하는 건 해보지 않은 일이었다. 여러 자료들을 참조했고, 다음과 같은 큰 단계들을 따라 목표를 달성할 수 있었다. 1. 추가하고자 하는 속성의 뷰를 선언하고, 속성을 지정한다. setLayoutParams에서는 뷰의 필수값인 layout_width, layout_height을 아래와 같이 지정해주게 된다. ScalableLayout이 아닌 기타 width, height 값을 정해 만들고자 한다면 WRAP_CONTENT로 넘겨주고 있는 부분을 조정해주면 된다. ( 이 경우에는 다음 페이지를 참조할 것 : https://stackoverflow.com/qu..
[안드로이드] Canvas를 활용해 커스텀 뷰에 선 그리기 (drawPath) 안드로이드 Canvas의 drawLine() 을 활용해 그래픽 위에 선을 그리고자 하였다. 향후 다시 참고하고자 필요한 단계들과 중요사항들을 적어두고자 한다. 1. Canvas 클래스 만들기 프로젝트 안에 View를 상속받는 임의의 Canvas 클래스를 만든다. (MyCanvas, mCanvas 등)... public class MyCanvas extends View { private Paint paint = new Paint(); private Path path = new Path(); private Canvas myCanvas = new Canvas(); private boolean is_first; public MyCanvas(Context context) { super(context); init(..
[안드로이드] styles.xml 수정으로 간단하게 앱 전체 폰트 수정하기 먼저 앱에 적용할 커스텀 테마를 styles.xml에 본인이 원하는대로 만들어 준다. 다음에는 만든 커스텀테마에 item으로 추가할 RobotoTextViewStyle, RobotoButtonStyle 이라는 이름의style을 추가하고, 각 style의 android:FontFamily 아이템을 추가해 폰트를 sans-serif-light로 설정한다. 마지막으로 새로 만든 style을 item으로 커스텀 테마에 추가하는데, android:textViewStyle 에 @style/RobotoTextViewStyleandroid:buttonStyle 에 @style/RobotoButtonStyle 로 각 아이템에 맞춰 커스텀 스타일을 지정해주면 된다. 이제 커스터마이즈된 커스텀 테마를 매니페스트 파일안의 각..