일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 멤버변수
- 안드로이드 유닛 테스트 예시
- 객체
- 안드로이드 os 구조
- 안드로이드 라이선스
- rxjava cold observable
- 서비스 쓰레드 차이
- 안드로이드 레트로핏 crud
- android retrofit login
- 자바 다형성
- jvm이란
- android ar 개발
- 안드로이드 유닛테스트란
- 안드로이드 레트로핏 사용법
- 2022 플러터 설치
- 플러터 설치 2022
- 큐 자바 코드
- Rxjava Observable
- 스택 자바 코드
- 스택 큐 차이
- 안드로이드 라이선스 종류
- rxjava hot observable
- 클래스
- ANR이란
- 안드로이드 유닛 테스트
- ar vr 차이
- 2022 플러터 안드로이드 스튜디오
- rxjava disposable
- jvm 작동 원리
- 서비스 vs 쓰레드
- Today
- Total
나만을 위한 블로그
[Android] FloatingActionButton(플로팅 버튼) 본문
참고) 디벨로퍼 사이트 : https://developer.android.com/guide/topics/ui/floating-action-button
Add a Floating Action Button | Android Developers
A floating action button (FAB) is a circular button that triggers the primary action in your app's UI. This page shows you how to add the FAB to your layout, customize some of its appearance, and respond to button taps. To learn more about how to design a
developer.android.com
플로팅 버튼은 단말의 오른쪽 하단에서 자주 보이는 + 모양 혹은 다른 모양의 버튼인데, 이 버튼을 누르면 그 위로 같은 모양의 둥근 버튼들이 올라와서 하고 싶은 걸 선택할 수 있도록 해주는 버튼이다.
이름부터 플로팅 액션 '버튼'인데 버튼과 리스너 등 이벤트가 비슷하지 않을까? 라고 생각했다.
공부해보니 구현법은 일반 버튼을 구현하는 방법과 비슷하다고 한다. 하지만 기본적으로 이미지뷰를 상속받는 위젯이라 버튼의 배경으로 쓸 이미지를 내가 지정해줄 수 있고, 서브 버튼들이 나열되도록 할 수 있다. 버튼이기 때문에 당연히 눌릴 때 발생하는 클릭 이벤트도 추가할 수 있다고 한다.
시험 삼아 프로젝트를 하나 새로 파고 그곳에서 플로팅 액션 버튼(이하 fab)을 찾았다.
그 전에 앱 수준 gradle에 아래와 같은 implements 문구를 넣어야 한다.
이 문구를 넣으면 스낵바도 같이 만들 수 있다.
implementation 'com.google.android.material:material:1.0.0'
그리고 MainActivity.xml에 들어가 design 탭의 palette에서 "fl"을 치니 바로 나왔다. 이름 옆의 다운로드 버튼을 눌러 gradle 파일에 implements하고 클릭 리스너를 달아봤다.
fb.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Snackbar.make(view, "스낵바 등장", Snackbar.LENGTH_SHORT).setAction("Action", null).show();
}
});
이렇게 해도 문제없이 화면에 출력됐다. 이것 말고도 리스너 클래스를 별도로 만들고, 그 클래스에 View.OnClickListener를 implements한 뒤에 이 리스너를 써도 정상 작동했다.
그냥 버튼인데 이미지 모양을 좀 더 다양하게 적용할 수 있는 버튼이라고 생각된다.
'Android' 카테고리의 다른 글
[Android] Android.Manifest.xmlParseError at [row, col]:[n,n] 에러 (0) | 2019.11.15 |
---|---|
[Android] 페이스북 로그인 API 구현 시 해시 키 구하기 (0) | 2019.11.15 |
[Android] 리사이클러뷰 클릭 이벤트 2 (0) | 2019.11.07 |
[Android] 리사이클러뷰 클릭 이벤트 (0) | 2019.11.07 |
[Android] 파이어베이스를 활용한 앱 채팅 기능 구현 (0) | 2019.11.07 |