blob: 24c98f26a7e1122c33b5d9bdcb3af05ba88bdb72 [file] [log] [blame]
Roman Nurik19266f72012-03-12 21:48:47 -07001page.title=Implementing Effective Navigation
2
3trainingnavtop=true
4startpage=true
Roman Nurik19266f72012-03-12 21:48:47 -07005
6@jd:body
7
8<div id="tb-wrapper">
9<div id="tb">
10
11<h2>Dependencies and prerequisites</h2>
12
13<ul>
Scott Main7c840552013-03-26 18:53:01 -070014 <li>Android 2.2 or higher</li>
Roman Nurik19266f72012-03-12 21:48:47 -070015 <li>Understanding of fragments and Android layouts</li>
Scott Main4e2c9dc2013-07-23 19:35:17 -070016 <li><a href="{@docRoot}tools/support-library/index.html">Android Support Library</a></li>
Roman Nurik19266f72012-03-12 21:48:47 -070017 <li><a href="{@docRoot}training/design-navigation/index.html">Designing Effective Navigation</a></li>
18</ul>
19
20<h2>You should also read</h2>
21
22<ul>
23 <li><a href="{@docRoot}guide/topics/ui/actionbar.html">Action Bar</a></li>
Scott Main50e990c2012-06-21 17:14:39 -070024 <li><a href="{@docRoot}guide/components/fragments.html">Fragments</a></li>
Roman Nurik19266f72012-03-12 21:48:47 -070025 <li><a href="{@docRoot}training/multiscreen/index.html">Designing for Multiple Screens</a></li>
26</ul>
27
28<h2>Try it out</h2>
29
30<div class="download-box">
31<a href="http://developer.android.com/shareables/training/EffectiveNavigation.zip"
32 class="button">Download the sample app</a>
33<p class="filename">EffectiveNavigation.zip</p>
34</div>
35
36</div>
37</div>
38
39
40<p>This class demonstrates how to implement the key navigation design patterns detailed in the
41<a href="{@docRoot}training/design-navigation/index.html">Designing Effective Navigation</a> class.
Scott Main7c840552013-03-26 18:53:01 -070042</p>
Roman Nurik19266f72012-03-12 21:48:47 -070043
Scott Main7c840552013-03-26 18:53:01 -070044<p>After reading the lessons in this class, you should have a strong understanding of how to
45implement navigation patterns with tabs, swipe views, and a navigation drawer. You should also
46understand how to provide proper <em>Up</em> and <em>Back</em> navigation.</p>
47
48<p class="note"><strong>Note:</strong> Several elements of this class require the
Scott Main4e2c9dc2013-07-23 19:35:17 -070049<a href="{@docRoot}tools/support-library/index.html">Support Library</a> APIs.
Scott Maind797c3c2013-07-30 16:24:33 -070050If you have not used the Support Library before, follow the instructions
51in the <a href="{@docRoot}tools/support-library/setup.html">Support Library Setup</a>
52document.</p>
Roman Nurik19266f72012-03-12 21:48:47 -070053
54
55<h2 id="lessons">Lessons</h2>
56
Roman Nurik19266f72012-03-12 21:48:47 -070057<dl>
Scott Main7c840552013-03-26 18:53:01 -070058 <dt><strong><a href="lateral.html">Creating Swipe Views with Tabs</a></strong></dt>
59 <dd>Learn how to implement tabs in the action bar and provide
60 horizontal paging (swipe views) to navigate between tabs.</dd>
Roman Nurik19266f72012-03-12 21:48:47 -070061
Scott Main7c840552013-03-26 18:53:01 -070062 <dt><strong><a href="nav-drawer.html">Creating a Navigation Drawer</a></strong></dt>
63 <dd>Learn how to build an interface with a hidden navigation drawer on the side
64 of the screen that opens with a swipe or by pressing the action bar's app icon.</dd>
Roman Nurik19266f72012-03-12 21:48:47 -070065
Scott Main7c840552013-03-26 18:53:01 -070066 <dt><strong><a href="ancestral.html">Providing Up Navigation</a></strong></dt>
67 <dd>Learn how to implement <em>Up</em> navigation using the action bar's app icon.</dd>
68
69 <dt><strong><a href="temporal.html">Providing Proper Back Navigation</a></strong></dt>
70 <dd>Learn how to correctly handle the <em>Back</em> button in special cases,
71 including how to insert activities into the back stack when deep-linking the user
72 from notifications or app widgets.</dd>
Roman Nurik19266f72012-03-12 21:48:47 -070073
74 <dt><strong><a href="descendant.html">Implementing Descendant Navigation</a></strong></dt>
Scott Main7c840552013-03-26 18:53:01 -070075 <dd>Learn the finer points of navigating down into your application's information hierarchy.</dd>
Roman Nurik19266f72012-03-12 21:48:47 -070076</dl>