반응형
Notice
Recent Posts
Recent Comments
Link
NOW OR NEVER
[Android] LogCat & UI 요소 - Widget 본문
반응형
Widget
text view
- 문자열을 출력해서 보여주는 부분
- listener 가 있긴 하지만 자주 사용되는 것은 없다
- textAppearence
- body, display,small, medium,large
- 토글 버튼 클릭시 글자 관련 설정을 볼 수 있다.(글씨체 종류, 색 등)
- 한글 때문에 코드로 글씨체 종류(font-family)를 설정하는 것을 추천한다.
- 글자 크기는 sp(프린트로 문서 뽑을 시 글자 크기)
- append : 기존 문자열 뒤에 문자열을 추가 할 수 있다.
button
- 사용자가 터치하면 개발한 기능이 구현되게 하는 것
- 이미지 버튼과 문자열을 표현하는 버튼이 있다. 이미지 버튼은 잘 사용하지 않는다.
- ImageButton
- backgroud - A% : 투명도 -> 이미지 버튼 사용 시 투명도를 0으로 설정 후 사용한다
- 이미지 뷰를 써서 터치에 활성화하게 만들면 이미지 버튼과 같은 역할을 한다. 둘 중 원하는 방식으로 사용해도 된다.
- srcCompat : 표시할 이미지(이미지 파일 이름은 앞에 숫자가 들어가면 안되고 소문자로만 구성해야 한다. - 변수이름이 이미지 파일이름 기반으로 하기 때문)
- 이미지 파일은 res/drawable 폴더에 넣어야 사용 가능
- 이미지 파일 사용 시 bitmap과 drawble 중 bitmap이 메모리가 더 적게 사용하므로 둘 다 있을 시 bitmap을 사용하는 것이 좋다
edit text
- inputType
- 입력에 관련된 부분 설정
- 깃발 부분 누르면 설정 가능
- 입력 종류
- testNoSuggestions : 입력 시 제시어 안나오게 함
- inputType에 따라 키보드 형식이 바뀜
- password : 영어와 숫자만 허용
- email : 키보드의 이모티콘 부분이 @으로 바뀜
- multiLine : 다른 타입과 다르게 엔터를 사용할 수 있다.
- 입력 타입에 상관없이 .text로 받아올 때 무조건 문자열로 반환되므로 toString()으로 변환 후 toInt()로 다시 변환해야 한다.
- hint :입력되어 있는 것이 없을 때 나타나는 문구, 입력 안내 문구로 자주 사용
- text : 미리 입력되어 있는 부분
- 코드 상에서 editText 부분 수정시(editTextText.text) setText(문구) 사용해야 함
event
systemService : 안드로이드가 운영하고 있는 다양한 백그라운드 프로세스
- InputMethodService : 키보드 관련 서비스
- current focus 사용 후 clear focus를 해주는 것이 좋다.
requestFocus()
- 문자열 세팅 후에 request focus를 하면 해당 문자열 뒤에 커서가 생긴다.
setOnEditorActionListener
- 엔터 키를 눌렀을 때 이벤트
- 고차 함수형으로 사용 가능 : setOnEditorActionListener{v,actionId, event -> 실행문}
addTextChangedListener
- 고차 함수형으로 사용 가능 : TextWatcher의 afterTextChanged 역할을 한다. 사용자 입력 실시간 감시 용으로 사용할 경우 TextWatcher을 사용하기 보다 addTextChangedListener를 고차함수형으로 사용하는 게 낫다
- TextWatcher형으로 사용 가능
- it 사용 시 입력한 문자열 받아올 수 있음
Text Watcher
- 사용자 입력 실시간 감시 용으로 사용할 수 있다.
- beforeTextChanged : 입력 내용 변경 전
- onTextChanged : 입력 내용 변경 했을 때
- afterTextChanged : 입력 내용 변경 후
- 위 메서드 오버라이딩해서 사용 : 안에 코드는 작성하지 않고 오버라이딩만 하는 것이 일반 적이다.
Logcat
- 안드로이드 스튜디오에서의 콘솔 출력
- 안드로이드 스튜디오 하단 메뉴에 존재
- emulator가 출력하고 있는 메세지를 볼 수 있다.
- 단말기 연결시 단말기가 출력하고 있는 메세지를 볼 수 있다.
- print 내용은 필터로 system.out 검색하면 볼 수 있다. 단 태그가 없어 필터링하기 힘들어 필요한 메세지만 보기 힘들다.
- Log(tag이름, 출력할 메세지 내용)
- tag는 필터링 할 용도로 사용된다. 해당 태그를 필터링 해서 해당 태그를 가진 메세지들만 골라 볼 수 있다.
- Log.i : information, 정보를 출력하는 용도
- Log.d : 개발중에 출력해보고 싶은 것이 있을 때 사용
- Log.e : error, 오류 메세지를 출력
- Log.w : warning, 경고 메시지를 출력
- Log.v : verbose, 기타 용도
etc
- 코틀린의 경우 람다식을 사용하는 것이 편하므로 listener 등을 람다식으로 표현하면 좋다.
- 미리보기와 다른 경우도 있으니 꼭 실행해서 실행화면 확인
- !이 붙어있으면 null을 허용하는 변수
- string은 문자열 변경이 불가능하기 때문에 editable 함수 사용으로 메모리를 쓸데없이 잡아먹는 것을 방지
- .run 하는 경우 들여쓰기가 많아지기 때문에 불편해질 수 있음. 하지만 코드가 간결해지므로 쓰는 것을 권장한다.
'Android' 카테고리의 다른 글
[Android] UI 요소 - View 2 (0) | 2023.06.14 |
---|---|
[Android] Compound Component (0) | 2023.06.12 |
[Android] UI 요소 - View (0) | 2023.06.11 |
[Android] UI 요소 (1) | 2023.06.07 |
[Android] Application 개발의 개요 (0) | 2023.06.07 |
Comments