밍이라구 2023. 12. 4. 19:07

* 비트맵 기본

-비트맵은 캔버스에 이미지 파일을 보여(출력)주려고 사용

- /res/drawable 폴더에 있는 이미지 파일을 보여주는 onDraw()메소드

-SD 카드의 이미지 파일을 보여주는 onDraw() 메소드

-이미지를 화면 중앙에 출력하기 위한 방법

 

*이미지의 기하학적 변한

-이동( translate ), 확대/축소( scale ) , 회전(  rotate ), 기울이기( skew ), 등 제공

 

*이미지 활용

-엠보싱, 블러링 등을 적용하려면 colorMatrix 클래스 활용

-블러링 : 이미지를 뿌옇게 만듬, BlurMaskFilter 클래스 제공 (부드럽게 만들어줌

BlurMaskFilter (반지름, 스타일) // 반지름 : 블러링 될 폭, 스타일은 SOLID 등

에뮬레이터에서는 버전에 따라 효과가 나타나지 않으면

hardwareAccelerated="true"로 변경 ... 그래도 안되면 스마트폰으로 실행해야함......

이런 방식으로 적용해주면 됩니다!

 

*엠보싱

-이미지가 볼록하게 튀어나와 보임

 

*컬러매트릭스

-색상이나 밝기 조절을 위해 ColorMatrix 와 colorMatrixcolorFilter사용

 

-red, green, blue, alpha의 기본값은 1로 설정되어 있으며, 이 값을 배수로 주면 각 색상의 대비가 커진다.

-색상을 밝게 하려면 brightness에 양수를 입력하고 어둡게 하려면 음수를 입력한다.

 

*어댑터뷰(AdapterView)

-AdapterView 하위에 ListView, ExpandableListView, GridView, Spinner , Gallery 등을 묶어서 어댑터뷰라 함.

-어댑터뷰를 사용할 때는 어댑터뷰의 모양을 설정하고 데이터를 채워주는 ArrayAdapter<T> 클래스를 함께 사용.

 

*리스트뷰

-ListView는 데이터를 리스트 모양으로 보여주고 리스트 중 하나를 선택하는 용도로 사용

-리스트뷰를 만드는 형식

1.리스트뷰에 나열할 내용을 String 배열로 미리 만듬.

2.리스트뷰 변수를 생성하고 XML의 <ListView>에 대응시킴

3.ArrayAdapter<String> 형의 변수를 선언하고, 리스트뷰의 모양과 내용을 1번 배열로 사용

4. 3번에서 생성한 어레이어댑터를 2번의 리스트뷰 변수에 적용시킴

5. 리스트뷰의 항목을 클릭 했을 때 동작하는 리스너 정의 

 

 

 

*리스트뷰의 다양한 모양 설정

- 필요하다면 라디오버튼이나 체크박스로 설정가능

- 라디오버튼 : simple_list_item_single_choice로 바꿈

-체크박스 : simple_list_item_multiple_choice로 바꿈

 

*리스트뷰의 동적 추가와 삭제

- 배열 대신 ArrayList<T>를 정의한 후 add() 와 remove() 사용

 

*그리드뷰

-그리드뷰는 주로 사진이나 그림을 격자 모양으로 배치함

-XML 파일에는 간단히 <GridView>를 넣으면 되지만, java코드에는 필요한 내용을 반드시 코딩 해주어야 함.

- 특히 <GridView>의 속성 중 열 개수를 지정하는 numColumlns는 꼭 넣어줘야함.

 

*선택 위젯

- 아이템을 선택하는 위젯 -> 어댑터 사용함.

-> 화면에 나타나는 뷰는 어댑터의 getView() 메서드에서 구현함.

*선택 위젯 구현 순서

(1) 선택 위젯에 나타낼 항목을 위한 XML정의

(2) 선택 위젯에 표시할 아이템 뷰(뷰 그룹) 정의

(3) 어댑터 정의 -> Adapter Class 정의

★보여질 뷰를 만들어 반환할 getView() 정의 

화면에 나타낼 뷰 정의와 선택 이벤트 처리 정의

 

*갤러리(Gallery)

-갤러리는 사진이나 이미지를 배치하고 좌우로 스크롤해서 볼 수 있도록

해줌. 단 이미지 목록을 스크롤하는 기능만 있으므로 이미지를 클릭하면 큰

이미지를 보이게 하는 방법은 java코드를 추가하여 사용함.

 

* 스피너 (Spinner)

-PC 의 드롭 다운 (Drop Down ) 박스와 비슷한 기능을 함

- 화면이 작은 스마트폰에서 여러 개 중 하나를 선택 할 수 있도록 확장해주는 용도로 쓰임

 

이러한 설정들은 항목중에서 하나를 선택할 수 있도록 하는 화면 구성 

 

*나인패치

-나인패치를 배경 이미지로 사용하면 안드로이드가 컨텐츠 크기에 따라서 자동적으로 배경 이미지의 사이즈를 조절하게 된다.

-가장 자리에 1px의 라인을 포함하는 표준 PNG로써, 확장자는 반드시 '이름.9.png'형태로 저장되어야한다.

 

지금은 안드로이드스튜디오에서 drawable 에 button 기능을 추가하여

Create 9-patch file로 저장한다음 편집