일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- position
- 스낵바
- 지도학습
- 테스트세트
- fit메소드
- score메소드
- CSS
- kneighbors()
- hover
- relative
- 버튼 상속
- 넘파이
- JavaScript
- 훈련세트
- 선택자 조건
- 메모리 객체화
- HTML
- 머신러닝
- 스크롤뷰
- apapter
- 픽셀 깨짐
- 표준화 z
- 레이아웃
- Absolute
- 데이터 전처릴
- LENGTH_INDEFINITE
- predict메소드
- K최근접이웃 회귀
- 웹사이트 공개
- 외부css
- Today
- Total
베짱이와 노는 개미
안드로이드 앱 프로그래밍#7-스낵바 띄우기 본문
일단 스낵바가 무엇이냐
화면 하단에 토스트 메시지 처럼 잠깐 떴다가 사라지는 메시지 창을 의미한다.
그렇다면 토스트기능과 스낵바의 차이가 궁금해진다.
검색을 해보니 토스트 기능으로 메세지가 떴을때는 일정시간이 지나야만 그 메세지가 사라진다
하지만 스낵바의 경우에는 사라지는 시간을 사용자가 설정할수있다.
오래 떠있게 하기, 짧게 떠있게 하기, 사용자가 직접 사라지게 하기 등등의 기능이 가능하다
쉽게 설명하면 같은 메세지 창이라 해도
토스트기능으로 뜬 메세지는 사용자가 아무리 다른곳을 터치해도 사라지지 않고
스낵바기능으로 뜬 메세지는 사용자가 터치를 하면 사라지게 할 수 있는것이다.
실제로 앱을 만들때 경고문구 같은 경우는 사용자에게 무조건 보여줘야하기때문에 스낵바 보다는 토스트기능으로 구현하는것이 좋아 보인다.
자 그럼 코드를 먼저 보자
이번에도 기능을 알아보기위해 constraint layout에서 버튼을 임의로 하나 만들었다.
그리고 자바코드로 액티비티를 설정해주자(스낵바)
스낵바의 시간을 설정해주는 데에는 3가지 종류가있다
Snackbar.LENGTH_LONG / Snackbar.LENGTH_SHORT / Snackbar.LENGTH_INDEFINITE
이중에서 Snackbar.LENGTH_INDEFINTE가 사용자가 터치를 했을때 메세지를 사라지게 해주는 것이다.
(**보통 Snackbar.LENGTH_LONG은 메세지 창이 5초 , Snackbar.LENGTH_SHORT은 3초정도 지속되는것 같다.)
Snackbar.LENGTH_INDEFINITE 이렇게 해주고 에뮬레이터를 돌려보면 스낵바 메시지 창이 계속 떠있다. 시간이 지나도 사라지지 않는다
그럼 우리는 이제 사용자가 확인 버튼을 터치했을 떄 메세지 창이 사라지게 하는 기능을 넣어볼것이다.
그때 필요한것은 setAction이다
자바가 어렵다는 걸 다시 느낀다. 클래스 정의와 객체와도 아직 헷갈린다.
어찌됐든 이렇게 자바 코드를 짜주면
이렇게 스낵바 오른쪽에 확인 버튼이 생기는게 보인다. 확인 이라는 텍스트를 바꿀수도 있다.(닫기 끄기 등등...)
저 확인 버튼을 누르면 스낵바는 바로 사라진다.
앱을 사용하면서 많이 사용해본 기능인데 실제로 구현해보는게 좀 복잡하다.
이상
'안드로이드 앱 프로그래밍' 카테고리의 다른 글
안드로이드 앱 프로그래밍#9 - 나인패치 이미지 (0) | 2021.07.31 |
---|---|
안드로이드 앱 프로그래밍#8-대화상자 띄우기 (0) | 2021.07.30 |
안드로이드 앱 프로그래밍#6-인플레이션 (0) | 2021.07.27 |
안드로이드 앱 프로그래밍#5-키 이벤트 처리 (0) | 2021.07.26 |
안드로이드 앱 프로그래밍#4-이벤트처리 (1) | 2021.07.25 |