10월, 2015의 게시물 표시

LogBack 설치하기

log4j 관련설정을 걷어낸후 아래와 같이 구성한다. logback 구성 "logback-core" - 말 그대로 주요기능이 모두 들어있는 핵심 코어 컴포넌트 입니다. "logback-classic" - "slf4j" 에서 사용이 가능하도록 만든 플러그인 컴포넌트 입니다. “logback-access“ - 사용하는 어플리케이션이 “웹 어플리케이션“일 경우 빛을 발하는 컴포넌트 입니다. slf4j 구성 "slf4j-api" - 로깅 Facade 객체이다. 로깅에 대한 추상 레이어를 제공하는것이고 java로 따지면 interface 집합을 나타낸다. 당연히 혼자 사용할 경우 구현 객체가 없어 에러가 발생한다. "jcl-over-slf4j" - 겉은 JCL(jakarta common logging)같지만 내부에서는 SLF4J API를 호출하도록 일종의 어댑터 나 다리 역할을 해주는 라이브러리 "log4j-over-slf4j.jar" - 파일을 압축해제하면 “log4j.jar” 와 동일한 패키지, 클래스가 존재 합니다. 즉, 패키지, 클래스를 동일하게 해서 구현체 클래스를 fake하는 것입니다. 그렇게 호출된 로그정보(메세지, 로그레벨…) 는 SLF4J에게 전달하고 바인딩된 “LOGBack“이 실제로 로그를 Write하는 것입니다. slf4j-jc.jar - 출력시 fake 하는 클래스 - maven pom 설정      <dependency>             <groupid>org.slf4j</groupid>             <artifactid>slf4j-api</artifactid>             <version>${org.slf4j.version}</version>         </dependen

안드로이드 컬러에서 알파(Alpha)값 사용(펌)

안드로이드 위젯에 많은 경우 알파(투명) 값을 줘서 위젯을 투명하게 만들기도 한다. 대부분의 경우 프로젝트에서 사용하는 컬러는 /values/colors.xml 파일에 기술한다. 이 파일에 기술하는 컬러는 #AARRGGBB의 형태를 가지고 있다. 이 형태는 자신이 가지고 있는 색을 표현하기 위해서 16진수의 2자리로 표현되어 있다. 그래서 각 A, R, G, B의 범위는 0~ 255의 값을 가지고 있다. 안드로이드에서 컬러는 이 클래스(http://developer.android.com/reference/android/graphics/Color.html)에 잘 설명되어 있다. 알파(A)의 값(0~100)에 해당하는 16진수의 헥사 값을 알아보자. 참고로 투명한 정도에 따라서 0~100%의 값으로 확인해보자. 알파값은 투명(0) ~ 불투명(100)의 값을 가지고 있다. 투명도에 따른 16진수의 헥사값은 다음의 공식으로 값을 확인할 수 있다. 아래의 20%의 값은 일반적으로 투명도가 80%라고 표현을 한다. 20% : 255 * 0.2 = 51 : 16진수의 헥사 값 33 : 투명도가 80%라고 한다. 50% : 255 * 0.5 = 127.5 : 반올림해서 80 이걸 기준으로 투명도에 따른 16진수 헥사 값을 확인하는 자바 코드는 다음과 같다. for ( double i = 1 ; i >= 0 ; i -= 0.01 ) {      i = Math.round(i * 100 ) / 100 .0d;      int rounded = ( int ) Math.round(i * 255 );      String hex = Integer.toHexString(rounded).toUpperCase();             if (hex.length() == 1 )          hex = "0" + hex;             int percent = ( int ) (i * 100 );