Android S7E5 : BottomNavigation – Tabs with ListView

ProgrammingWizards TV의 최신판을 어떻게 환영하십니까? 이 클래스에서는 ListView 예제를 사용하여 android Bottom Navigation을 살펴볼 것입니다 우리는 Bottom NavigationView의 모든 탭에 대해 ListView를 렌더링하는 방법을보고 싶습니다

Bottom Navigation Tabs 또는 이미지와 텍스트가있는 항목으로 작업 할 것입니다 모든 탭을 클릭하면 ListView에서 렌더링되는 다른 범주의 데이터가 표시됩니다 또한 각 탭의 색상과 아이콘 및 제목을 변경합니다 우리는 AHBottomNavigation이라는 세 번째 파트 라이브러리를 사용할 것입니다 AHBottomNavigation은 소재 디자인 하단 탐색 기능을 구현할 수있는 라이브러리입니다

ListView 항목에서 ListView 항목을 클릭하면 Toast 메시지에 표시됩니다 이 유형의 앱은 데이터를 분류하는 것과 관련된 여러 유형의 앱을 만들 때 유용합니다 각 범주를 자체 목록에 나열합니다 여기서 가로 모드로 애플리케이션을 볼 수도 있습니다 먼저 프로젝트를 만들고 API 레벨 14의 최소 sdk 버전을 선택합니다

물론 응용 프로그램 이름을 입력하십시오, 우리는 안드로이드 자바 프로젝트를 만들고 있습니다 우리의 템플릿으로 빈 활동을 선택하십시오 그런 다음 마침을 클릭하여 프로젝트를 생성하십시오 먼저 앱 수준 buildgradle을 사용하고 ahbottomnavigation을 종속 항목으로 추가합니다

구현 문을 사용하여 의존성 종결에서이 작업을 수행합니다 다운로드하고 프로젝트에 추가하려면 인터넷이 필요합니다 추가하면 프로젝트를 동기화하라는 메시지가 나타납니다 그런 다음 colors

xml로 이동하여 정의한 색상 16 진수 코드를 추가합니다 이 색상을 사용하여 하단 탐색 탭의 색상을 지정합니다 그런 다음 stringsxml을 탐색하고 하단 탐색 탭 제목을 추가합니다 이 경우 세 개의 탭이 있습니다

그런 다음 activity_mainxml을 검토합니다 여기서는 루트 태그로 상대 레이아웃을 사용합니다 상단에는 TextView가 헤더 라벨로 표시됩니다 그 아래에는 선택된 카테고리 데이터를 렌더링하는 ListView가 있습니다

그 아래에는 레이아웃의 맨 아래에 정렬 된 AHBottomNavigation 태그가 있습니다 이것은 우리가 탭을 추가 할 하부 네비게이션 바를 만드는 뷰입니다 우리가 참조 할 것이기 때문에 ID를 할당해야합니다 그런 다음 MainActivityjava로 이동합니다

먼저 클래스를 호스트 할 패키지 이름을 지정합니다 그런 다음 import 문을 추가합니다 androidappActivity에서 파생 된 Java 클래스를 만듭니다

이것은 우리의 수업을 하나의 활동으로 바꿀 것입니다 AndroidManifestxml로 이동하면 android studio에서 활동을 등록했음을 알 수 있습니다 android manifestxml에 있습니다

우리는 AHBottomNavigation, TextView, ArrayAdapter를 포함하여 인스턴스 필드를 정의합니다 또한 ListView와 정수를 0으로 초기화하여 범주를 나타내는 데 사용합니다 문자열의 ArrayList를 반환하는 getCosmicBodies ()라는 메서드를 만듭니다 그 문자열은 우리의 우주 범주입니다 그래서 먼저 우리는 arraylist를 인스턴스화하고 그것을 지 웁니다

cosmicCategory 정수를 전환하는 switch 문을 만듭니다 Case 0 우리는 머리글 라벨을 Planets로 설정합니다 다음 우리의 arraylist에 행성을 추가하십시오 case 1 헤더 textView를 Stars로 설정합니다 그런 다음 arraylist에 행성을 추가하십시오

그렇지 않으면 은하를 헤더 TextView로 설정하고 우리의 빈 arraylist에 은하계를 추가합니다 마지막으로 우리는 arraylist를 반환합니다 그런 다음 ArrayAdapter를 인스턴스화하고 ListView에 바인딩하는 메서드를 만듭니다 ArrayAdapter를 인스턴스화하여 컨텍스트, 레이아웃 및 반환 할 getCosmicBodies ()를 전달합니다 우리에게 데이터의 arraylist

그런 다음 setAdapter () 메서드를 사용하여 어댑터를 ListView로 설정합니다 그런 다음 createNavigationItems ()라는 메서드를 만듭니다 먼저 AHBottomNavigationItem을 인스턴스화하고 문자열 참조를 전달하여 탭, 드로어 블 이미지 및 색상 드로어 블 폴더에 지정한 이미지가 참조하는 이미지입니다 우리는 우리가 원하는 많은 하부 네비게이션 아이템이나 탭을 위해이 작업을 수행합니다

이 경우 세 개의 탭이 생성됩니다 그런 다음 addItem () 메서드를 사용하여 해당 탭이나 항목을 bottomNavigation에 추가합니다 그런 다음 기본 배경색을 설정합니다 그런 다음 강조 색상과 비활성 색상을 설정하십시오 그런 다음 제목 상태를 설정합니다

이 경우에는 TitleStateALWAYS_SHOW를 사용했습니다 착색 된 바닥을 사용합니다 위치를 전달하여 현재 항목을 설정합니다 그런 다음 아래쪽 탐색 항목이나 탭 선택 이벤트를 듣습니다

탭을 선택하면 cosmicCategory 값을 선택한 탭의 위치로 설정하면됩니다 그런 다음 bindData ()를 호출하여 데이터를 바인드하십시오 그런 다음보기를 초기화하십시오 이러한 뷰에는 xml 레이아웃에서 정의한 bottomNavigation이 포함됩니다 그런 다음 ListView와 TextView를 참조하십시오

그런 다음 ListView에 대한 ItemClick 이벤트를 수신합니다 ListView 항목을 클릭하면 토스트 메시지가 표시됩니다 그런 다음 onCreate () 메서드를 재정의하십시오 먼저 콘텐츠보기를 설정합니다 그런 다음 initializeViews () 메소드를 호출하십시오

그리고 그 프로젝트를 실행했습니다 탭을 클릭하면 해당 ListView의 데이터가로드됩니다 우리가 볼 수 있듯이 우리는 행성, 별, 은하계라는 세 개의 탭을 가지고 있습니다 그게 다야 우리 사이트 http://camposha

info에 소스 코드가 있습니다 동영상을 좋아하고 공유하고 더 많은 정보는 ProgrammingWizards TV에 구독하십시오 고마워, 오 클루 미