FloatingActionButton 위치 지정하기
조회수 6184회
안녕하세요! FAB의 위치를 변경할 방법을 잘 몰라서 질문올립니다 ㅠ
위의 그림과 같이 뷰들이 배치되어있습니다. 그림에서의 FAB는 Acitivity_main.xml 파일안에서 CordinatorLayout 안에 있으며, 가장 큰 네모(가장 바깥네모, 빨간색을 포함한)의 center에 위치해 있습니다. 음... 핸드폰 액정의 센터? 라고 할 수 있겠네요.
그런데 저는 지금 빨간색 네모의 center에 맞춰주고 싶은데 그렇게 하려면 어떻게 해야할까요? 뷰들은 content_main.xml 파일안에 있고, 전부 LinearLayout으로 구성이 되어있습니다.
제가 생각하기에는... 음... 저 빨간색 네모의 위치를 가져와서 계산을 통하여 센터를 구하고 그 위치를 FAB의 위치에 setting 해주면 되지 않을까 하는데...
그 위치를 가져오는 방법이 param 이라고 어디선가 본적은 있는데 아직 사용을 해본적이 없네요 ㅠ FAB를 CordinatorLayout안에서 위치를 param을 통해서 바꿀수 있는지도 잘 모르겠고....
혹시 이 방법이 가능한 가요? 가능하다면 param에 대해서 공부를 해봐야할 듯 하네요ㅠ
-
(•́ ✖ •̀)
알 수 없는 사용자
2 답변
-
빨간색 네모는 하나인건가요? (질문을 제대로 이해한건지 모르겠네요^ ;)
빨간색 네모가 하나인것으로 보고 FloatingActionButton의 anchor를 빨간색 네모로 잡아주고 layout_anchorGravity에 center_vertical|center_horizontal로 주면 될것 같아요.
<android.support.design.widget.FloatingActionButton ...생략 app:layout_anchor="@id/빨간색네모아이디" app:layout_anchorGravity="center_vertical|center_horizontal" />
-
(•́ ✖ •̀)
알 수 없는 사용자
- 오!! 감사합니다! anchor라는 속성이 있는지 몰랐네요! 혹시 앵커는 cordinatorLayout 안에 있는 것에만 적용할 수 있는 것으로 이해했는데 맞나요? 알 수 없는 사용자 2016.4.16 21:54
- @TuTanKhamen 네 맞습니다~ 알 수 없는 사용자 2016.4.17 12:02
- 감사합니다! 알 수 없는 사용자 2016.4.17 17:21
-
-
저도 CoordinatorLayout에 대해 자세히는 모르지만, LinearLayout처럼 child view들이 layout_gravity 속성을 갖고 있습니다. FAB의 layout_gravity를 center로 설정해보세요.
<android.support.design.widget.FloatingActionButton android:id="@+id/fab" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" android:layout_margin="@dimen/fab_margin" android:src="@android:drawable/ic_dialog_email" />
-
(•́ ✖ •̀)
알 수 없는 사용자
-
댓글 입력