Fragment
[Do it! 안드로이드 앱 프로그래밍 #16] 바로가기 메뉴 만들기
16 바로가기 메뉴 만들기 바로가기 메뉴는 화면의 좌측 상단에 위치한 햄버거 모양 아이콘을 눌렀을 때 나타나는 화면을 말한다. 웹이나 앱에서 자주 사용되는 기능이며 안드로이드에서는 NavigationDrawer라는 이름으로 불린다. 바로가기 메뉴는 몇 개의 화면에서 공통으로 보여줄 수 있기 때문에 빠르게 메뉴 기능에 접근하고자 할 때 사용한다. 또한 로그인한 사용자의 프로필 정보나 설정 메뉴를 보여줄 때도 사용할 수 있다. 바로가기 메뉴를 추가하는 가장 쉬운 방법은 안드로이드에서 첫 화면의 유형으로 제공하는 것을 사용하는 것이다. Create New Project > Navigation Drawer Activity > Next > Name 입력 > Finish Empty Activity를 선택했을 때보다..
[Do it! 안드로이드 앱 프로그래밍 #15] 뷰페이저 만들기
15 뷰페이저 만들기 뷰페이저는 손가락으로 스크롤하여 넘겨볼 수 있는 기능을 제공한다. 뷰페이저는 그 안에 프래그먼트를 넣을 수 있고 좌우 스크롤로 프래그먼트를 전환하게 된다. 뷰페이저는 내부에서 어댑터라는 것과 상호작용하게 되어 있는데 이것은 뷰페이저가 여러 개의 아이템 중에 하나를 보여주는 방식으로 동작하기 때문이다. 어댑터에 대해서는 나중에 리싸이클러뷰를 다룰 때 자세하게 설명한다. [뷰페이저 만드는 순서] ① 메인 XML 레이아웃 파일에 ViewPager 위젯을 추가한다. (뷰페이저의 id 속성 값으로 pager를 입력한다.) ② 뷰페이저 안에 넣을 프래그먼트 세 개를 만든다. (프래그먼트도 마찬가지로 XML 레이아웃 파일과 소스 코드 파일이 한 쌍이 되어야 한다.) ③ MainActivity.j..
[Do it! 안드로이드 앱 프로그래밍 #14] 상단 탭과 하단 탭 만들기
14 상단 탭과 하단 탭 만들기 하나의 뷰에서 여러 개의 정보를 볼 때 일반적으로 사용하는 뷰로 탭(Tab)을 들 수 있다. 탭은 네비게이션(Navigation) 위젯이라고 불리기도 하며 상단 탭과 하단 탭(Bottom Navigation)으로 구분할 수 있다. 최근에는 하단 탭을 더 많이 사용한다. 14-1 상단 탭 보여주기 세 개의 상단 탭을 보여주기 위해서 화면은 총 4개가 필요하다. 하나는 메인 액티비티를 보여주기 위한 화면이고, 나머지 세 개는 각각의 탭 화면이다. 그렇다면 메인 액티비티의 XML 파일에는 상단 탭의 레이아웃과, 화면을 보여줄 레이아웃이 필요하다. ▼ 상단 탭 레이아웃과 화면을 보여줄 프레임 레이아웃 추가하기 잘 보일 진 모르겠지만, 이해를 돕기 위해 직접 그린 사진도 첨부해두겠..
[Do it! 안드로이드 앱 프로그래밍 #12] 프래그먼트로 화면 만들기
12 프래그먼트로 화면 만들기 저번 글에서는 하나의 액티비티에 하나의 프래그먼트가 들어가도록 만들었다면, 이번 글에서는 하나의 액티비티에 두 개의 프래그먼트가 들어가도록 만들어볼 것이다. 화면의 위쪽과 아래쪽을 나눈 후 위쪽에는 이미지 선택이 가능한 리스트가 보이는 프래그먼트를 만들어 넣고 아래쪽에는 선택된 이미지가 보이는 프래그먼트를 만들어 넣는다. 우선, 순서를 간단하게 요약해보겠다. 자세한 설명은 소스 코드와 그 밑의 설명을 참고하길 바란다. [XML 레이아웃] ① 첫 번째 프래그먼트를 위한 XML 레이아웃 fragment_list.xml을 만들고 세 개의 버튼을 추가한다. ② 두 번째 프래그먼트를 위한 XML 레이아웃 fragment_viewer.xml을 만들고 이미지뷰를 추가한다. ③ 메인 액티..
[Do it! 안드로이드 앱 프로그래밍 #11] 프래그먼트란?
11 프래그먼트란? 11-1 프래그먼트에 대해 이해하기 여러 개의 화면을 구성할 때는 보통 각각의 화면을 액티비티로 만든 후 액티비티를 전환하는 방법을 사용한다. 그런데 화면의 일부분을 다른 화면으로 구성하고 싶을 때는 어떻게 해야 할까? ① 리니어 레이아웃 안에 다른 레이아웃을 추가하고 각각의 레이아웃 안에 필요한 뷰를 넣는다. ② 프레임 레이아웃 안에 여러 개의 레이아웃을 넣어 중첩시킨 후 가시성 속성을 설정한다. ③ 하나의 액티비티 안에 여러 개의 액티비티를 부분 화면으로 설정한다. 위 세 가지 방법은 이전 게시글에서 배웠다. 방법 ①은 코드가 복잡해지는 문제가 있고, 방법 ②는 다른 액티비티에서 사용하려 할 때 동일한 레이아웃을 중복해서 만들어야 하는 문제가 있다. 방법 ③은 시스템에서 액티비티를..