탐색 창 (Google+ 및 YouTube)


403

오늘날 최고의 일부 앱과 같은 슬라이딩 메뉴를 구현하는 방법을 아는 사람이 있습니까?

다른 스택 오버플로 질문 에는이 작업을 수행하는 방법에 대한 답변이 없으므로 다른 사람들을 돕기 위해 많은 정보를 수집하려고합니다. 아래에서 언급 한 모든 응용 프로그램은 슬라이드 메뉴를 구현하는 데 큰 도움이됩니다.

1. Google Plus (12/7/7 현재)

Google+ 슬라이드 아웃 메뉴 스크린 샷

왼쪽 상단에서 G + 로고를 클릭해야만 첫 번째 화면에서 두 번째 화면으로 이동할 수 있습니다. 전체 화면이 해당 위치에서 이동하고 화면 오른쪽 (작업 표시 줄 포함)으로 이동합니다. 첫 번째 화면으로 돌아가려면 오른쪽을 다시 초점으로 밀거나 G + 아이콘을 다시 클릭하면됩니다.

2. YouTube (12/7/7 현재)

YouTube 슬라이드 아웃 메뉴 스크린 샷

두 가지 방법을 사용하여 첫 번째 화면에서 두 번째 화면으로 이동할 수 있습니다. 왼쪽 상단에서 YouTube 로고를 클릭하거나 스 와이프 제스처를 사용하여 오른쪽으로 이동할 수 있습니다. 이것은 이미 G + 앱과 다릅니다. 둘째, 작업 표시 줄이 (G +와 달리) 그대로 유지 된 것을 볼 수 있습니다. 마지막으로 원래 화면으로 돌아가려면 G +처럼 작동합니다.


1
그것의 모양으로, 많은 사람들이 이와 같은 일을 한 경험이 없었습니다. 나는 무언가를 직접 구현하고 당신이 겪을 수있는 특정 문제로 SO에 오는 것을 제안합니다.
David Titarenco

7
그래, 내가 좀 더 관심을 가질만한 다른 질문에 SO 질문을 게시 한 이유입니다. 나는 이것을 성공적으로 달성하고 그들의 지혜를 나누고 싶어하는 누군가가 있는지 궁금합니다.
EGHDK

1
@EGHDK이 기사 시리즈를 확인하십시오 : android.cyrilmottier.com/?p=658
Alex Lockwood

2
나는이 질문에 얼마 전에 대답했지만 Prixing 은 최고의 플라이 아웃 메뉴를 가지고 있음을 다시 강조합니다 . 그것은 절대적으로 아름답고 완벽하게 매끄럽고 Facebook, Google+ 및 YouTube를 수치스럽게 만듭니다. EverNote도 꽤 좋지만 Prixing만큼 완벽하지는 않습니다. 플라이 아웃 메뉴가 어떻게 구현되었는지에 대한 이 일련의 게시물 을 확인하십시오 (Pricing 자신의 수석 개발자 이외의 다른 사람으로부터)!
Alex Lockwood

2
Android 지원 패키지 개정판 13 (2013 년 5 월)에는 창의 가장자리에서 가져올 수있는 탐색 창을 만드는 DrawerLayout이 있습니다. 그리고 내비게이션 서랍은 이제 디자인 패턴입니다. developer.android.com/tools/extras/support-library.html
Wubao Li

답변:


152

편집 # 3 :

Navigation Drawer 패턴은 공식적으로 Android 설명서에 설명되어 있습니다!

여기에 이미지 설명을 입력하십시오 다음 링크를 확인하십시오.


편집 # 2 :

Roman Nurik (Google의 Android 디자인 엔지니어)은 서랍을 열 때 (YouTube 앱과 같이) 작업 표시 줄을 움직이지 않는 것이 권장되는 동작임을 확인했습니다. 이 Google+ 게시물을 참조하십시오 .


편집 # 1 :

나는이 질문에 얼마전에 대답했지만, Prixing이 최고의 플라이 아웃 메뉴를 가지고 있다는 것을 다시 강조하기 위해 돌아 왔습니다 . 그것은 절대적으로 아름답고 완벽하게 매끄럽고 Facebook, Google+ 및 YouTube를 수치스럽게 만듭니다. EverNote도 꽤 좋지만 Prixing만큼 완벽하지는 않습니다. 플라이 아웃 메뉴가 어떻게 구현되었는지에 대한 이 일련의 게시물 을 확인하십시오 (Pricing 자신의 수석 개발자 이외의 다른 사람으로부터)!


원래 답변 :

Adam Powell과 Richard Fulcher는 49:47-52:50 에서 이에 대해 이야기합니다. 는 "Android의 탐색"이라는 제목의 Google I / O 대화에서 에 이에 대해 이야기합니다.

답변을 요약하면,이 게시일 현재 슬라이드 아웃 탐색 메뉴는 공식적으로 Android 애플리케이션 디자인 표준의 일부 가 아닙니다 . 아시다시피, 현재이 기능에 대한 기본 지원은 없지만 향후 지원 패키지 개정판에 추가하는 것에 대한 이야기가있었습니다.

YouTube 및 G + 앱과 관련하여 다르게 작동하는 것은 이상해 보입니다. YouTube 앱이 작업 표시 줄의 위치를 ​​수정하는 이유는

  1. YouTube 앱을 사용하는 사용자에게 가장 중요한 탐색 옵션 중 하나는 SearchView작업 표시 줄에서 수행되는 검색 입니다. 이와 관련하여 작업 표시 줄을 정적으로 만드는 것이 합리적입니다. 사용자가 할 수 있기 때문입니다. 좋습니다 항상 새 비디오를 검색 할 수있는 옵션을 가질 .

  2. G + 앱은 ViewPager 를 콘텐츠를 표시하므로 레이아웃 콘텐츠에 따라 풀 아웃 메뉴 (예 : 작업 표시 줄 아래의 모든 항목)를 만드는 것이 의미가 없습니다. 스 와이프는 전체 탐색 방법이 아닌 페이지 간 탐색 방법을 제공해야합니다. 이것이 G + 앱에서 YouTube 앱에서와 다르게 결정한 이유 일 수 있습니다.

    또 다른 메모에서 다른 버전의 "풀 아웃 메뉴"에 대한 Google Play 앱을 확인하십시오 (가장 왼쪽 페이지에있을 때 왼쪽으로 스 와이프하면 "반쪽 페이지"메뉴가 나타납니다).

이것이 일관된 동작은 아니지만 Android 팀 내에서이 동작이 어떻게 구현되어야하는지 100 % 합의 된 것으로 보이지는 않습니다. 앞으로 두 앱의 탐색이 동일하도록 앱이 업데이트 되어도 놀라지 않을 것입니다 (토론의 모든 Google 제작 앱에서 탐색을 일관되게 만드는 데 매우 열중했습니다).


73
Prixing, Evernote 및 Spotify는 모두 자신의 앱을 작성하는 팀이 상당히 많습니다. 저는 Prixing의 CEO입니다. 실제 안드로이드 개발자는 한 명뿐입니다 (그러나 Cytal Mottier는 매우 유명합니다)
EricLarch

Android 지원 패키지 개정판 13 (2013 년 5 월)에는 창의 가장자리에서 가져올 수있는 탐색 창을 만드는 DrawerLayout이 있습니다. 그리고 내비게이션 서랍은 이제 디자인 패턴입니다. developer.android.com/tools/extras/support-library.html
Wubao Li

NavigationDrawer는 V4에 있지만 아직 V4에 제공되지 않은 ActionBar가 필요하므로 API 레벨이 11 이하인 앱에서는 사용할 수 없습니다.
Nayanesh Gupte

1
@NayAneshGupte 당신은 항상 ActionBarSherlock을 사용하여
APIBar

닫기 애니메이션을 부드럽게하려면 인공 지연을 도입 할 방법이없는 것 같습니다.
theblang

15

최근에 나는 "RibbonMenu"라는 현재 Github 프로젝트를 포크하고 내 필요에 맞게 편집했습니다.

https://github.com/jaredsburrows/RibbonMenu

목적은 무엇인가

  • 손쉬운 액세스 : 슬라이드 식 메뉴에 쉽게 액세스 할 수 있습니다.
  • 간편한 구현 : 최소한의 코드를 사용하여 동일한 화면을 업데이트
  • 독립성 : ActionBarSherlock과 같은 지원 라이브러리가 필요하지 않습니다.
  • 사용자 정의 : 색상 및 메뉴를 쉽게 변경할 수 있습니다.

새로운 소식

  • Facebook 및 Google+ 앱과 일치하도록 슬라이딩 애니메이션을 변경했습니다.
  • 표준 ActionBar 추가 (ActionBarSherlock을 사용하도록 선택할 수 있음)
  • 메뉴 항목을 사용하여 메뉴 열기
  • 기본 활동에서 ListView를 업데이트하는 기능이 추가되었습니다.
  • 메뉴에 2 개의 ListView를 추가하고 Facebook 및 Google+ 앱과 유사
  • 구현 예제를 보여주기 위해 AutoCompleteTextView 및 Button을 추가했습니다.
  • 사용자가 '뒤로 버튼'을 눌러 메뉴가 열릴 때 메뉴를 숨길 수있는 방법 추가
  • 사용자가 Facebook 및 Google+ 앱과 달리 배경 (기본 ListView) 및 메뉴와 동시에 상호 작용할 수 있습니다!

메뉴가있는 ActionBar

메뉴가있는 ActionBar

Menu out 및 검색이 선택된 ActionBar

Menu out 및 검색이 선택된 ActionBar


5

NavigationDrawerGoogle Material Design Guidelines (및 API 10과 호환 가능) -MaterialDrawer 라이브러리 (GitHub 링크 )에 따라 구현이 훌륭합니다 . 작성 시점 2017 년 5 월 현재 적극적으로 지원됩니다.

Maven Central repo 에서 사용할 수 있습니다 . Gradle 의존성 설정 :

compile 'com.mikepenz:materialdrawer:5.9.1'

메이븐 의존성 설정 :

<dependency>
    <groupId>com.mikepenz</groupId>
    <artifactId>materialdrawer</artifactId>
    <version>5.9.1</version>
</dependency>

여기에 이미지 설명을 입력하십시오 여기에 이미지 설명을 입력하십시오


@lmiguelvargasf 답변에 GitHub 프로젝트를 피팅하는 방법은 무엇입니까?! 아이디어를 공유하십시오.
naXa


2

개인적 navigationDrawer으로 Google 드라이브 공식 앱을 좋아합니다 . 그것은 잘 작동하고 훌륭하게 작동합니다. 내비게이션 드로어를 열고 닫는 핵심 포인트이므로 내비게이션 드로어가 작업 표시 줄을 움직이지 않아야한다는 데 동의합니다.

여전히 그 동작을 얻으려고하면 최근에 호출 된 프로젝트를 만들고 SherlockNavigationDrawer예상대로 탐색 드로어 구현을 사용합니다.ActionBarSherlock 허니컴 장치 하고 작동합니다. 확인해 봐:

SherlockNavigationDrawer github

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.