[Android] Fragment에서 BottomNavigationView 숨기기

선주·2021년 12월 5일
1

Android

목록 보기
3/11
post-thumbnail

MainActivity에 BottomNavigationView가 정의되어 있고, Fragment①에서 Fragment②로 이동할 때 BottomNavigation을 숨기고자 한다. → Fragment②에서 작업해주면 된다.


불린값을 파라미터로 받는 hideBottomNavigationView 메소드를 정의하고
getActivity().findViewById(R.id.~)로 Actibity의 BottomNavigationView를 받아온 뒤
불린값이 true이면 setVisibility 속성을 GONE으로 설정해서 내비게이션을 숨기고,
불린값이 false이면 setVisibility 속성을 VISIBLE로 설정해서 내비게이션을 다시 보이게 한다.


onCreateView에서는 hideBottomNavigationView(true)를 부르고
onDestroyView에서는 hideBottomNavigationView(false)를 부르면


이 Fragment에서만 내비게이션을 숨기고, 이 Fragment에서 벗어나면 다시 내비게이션이 보이게 된다.


public class ChatFragment extends Fragment {

    @Override
    public void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        View view = inflater.inflate(R.layout.fragment_chat, container, false);
        hideBottomNavigation(true);
        return view;
    }

    @Override
    public void onDestroyView() {
        super.onDestroyView();
        hideBottomNavigation(false);
    }

    public void hideBottomNavigation(Boolean bool) {
        BottomNavigationView bottomNavigation = getActivity().findViewById(R.id.bottomNavigation);
        if (bool == true)
            bottomNavigation.setVisibility(View.GONE);
        else
            bottomNavigation.setVisibility(View.VISIBLE);
    }
}
profile
기록하는 개발자 👀

0개의 댓글