字幕列表 影片播放 列印英文字幕 IAN LAKE: Welcome to Android Development Patterns, where we help you build better apps. I'm Ian Lake. Let's get to work. Let's think about how you navigate through an app. You navigate to a detailed view from the parent view, or you can navigate between sibling views. That's where tabs and ViewPagers come in. So what is a ViewPager? That's what controls the actual swiping between different pages of content. ViewPager gets its content from a PagerAdapter. This could be a generic view-- one for each page-- or whole fragments, if you use a FragmentPagerAdapter or FragmentStatePagerAdapter. FragmentPagerAdapter keeps each fragment it creates in memory, making it lightning fast to switch between already loaded tabs. However, this can get expensive, memory-wise, if you have a large number of fragments. Something FragmentStatePagerAdapter solves by destroying and recreating fragments as needed, only saving the state. There isn't a lot to a PagerAdapter. You'll need to override getCount to return the number of pages you have. Then, in the case of a FragmentPagerAdapter, you'll need to implement getItem, which returns the fragment associated with each position. Here, we'll just do a simple switch statement, selecting the right fragment for each position. But you have the flexibility to use any approach you want. The other thing we might want to override is getPageTitle, returning a string describing each page. Why would you want a page title? Well, those page titles will be really helpful if you want to have some tabs associated with your ViewPager. Tabs give users a great way to see exactly what those pages contain without having to scroll through each one. They also allow users to jump between pages by tapping on a tab. The TabLayout class, part of the Android Design Support Library, makes it easy to implement tabs, with all the material design styling. And it's backward compatible to Android 2.1. Let's hook everything together. First, we need to hook our ViewPager up to a PagerAdapter using setAdapter. Then, hooking up a TabLayout is just a single method setupWithViewPager. With just that, you get tabs from the PagerAdapter's titles. And swiping through pages will change the tabs, and tapping on tabs will change the pages-- as you'd expect. Get started with the TabLayout and ViewPagers by adding the Design Library. Be sure to check out the design guidelines and the detailed training docs. Thanks for joining me here on Android Development Patterns. Use tabs and ViewPagers to build better apps. [MUSIC PLAYING]
B2 中高級 美國腔 標籤和ViewPager(Android開發模式Ep 9) (Tabs and ViewPager (Android Development Patterns Ep 9)) 365 12 Franco Liu 發佈於 2021 年 01 月 14 日 更多分享 分享 收藏 回報 影片單字