How to Make Awesome Mobile Apps - Mastering fundamentals of Android App Development | Sahil Patel | Skillshare

How to Make Awesome Mobile Apps - Mastering fundamentals of Android App Development

Sahil Patel, Mobile App Developer

How to Make Awesome Mobile Apps - Mastering fundamentals of Android App Development

Sahil Patel, Mobile App Developer

Play Speed
  • 0.5x
  • 1x (Normal)
  • 1.25x
  • 1.5x
  • 2x
13 Lessons (2h 58m)
    • 1. Course-Intro

      3:13
    • 2. Overview. What will be covered?

      13:14
    • 3. A brief history of lists and adapters

      19:30
    • 4. Setting up project

      7:04
    • 5. Setting up recycler view

      14:29
    • 6. Covering edge cases

      11:33
    • 7. Adding search functionality

      15:12
    • 8. Heterogeneous list

      15:22
    • 9. Grouping items in a list

      20:52
    • 10. Toggle layout between list to grid

      30:10
    • 11. animating layout transitions

      12:04
    • 12. Polishing the app

      10:59
    • 13. Final project

      4:20
  • --
  • Beginner level
  • Intermediate level
  • Advanced level
  • All levels
  • Beg/Int level
  • Int/Adv level

Community Generated

The level is determined by a majority opinion of students who have reviewed this class. The teacher's recommendation is shown until at least 5 student responses are collected.

114

Students

--

Projects

About This Class

Have you ever thought of making awesome apps? Something other than just a proof of concept. Something beautiful and amazing?

I have spent a few years learning from the internet and another year after that unlearning the wrong bits.

In this course we will take your knowledge gained from an introductory course on app development to the next level. We will talk about easy and efficient ways to add that wow factor to your apps.

You will be surprised to see how simple it is to make awesome apps. Give it a try. You will not regret it.

Meet Your Teacher

Teacher Profile Image

Sahil Patel

Mobile App Developer

Teacher

The first software that you create stick with you forever. It is "your precious" and like a loving parent, you overlook all it's shortcomings and ugliness. The first project is not supposed to be good looking and well written. The second project though, the stakes get high and things start to become a little less fun. 

 

This was my first project. There was one before it but zeroth one doesn't count.

https://www.youtube.com/watch?v=EHMHy1hinU4

 

I haven't completed my best project yet. 

 

Since this first project, my tools of choice have changed. Now it's Android and Python (iOS pretty soon too). I have learn't a lot about making good apps and now is the right time to start giving back. I am really excited to star... See full profile

Class Ratings

Expectations Met?
  • Exceeded!
    0%
  • Yes
    0%
  • Somewhat
    0%
  • Not really
    0%
Reviews Archive

In October 2018, we updated our review system to improve the way we collect feedback. Below are the reviews written before that update.

Your creative journey starts here.

  • Unlimited access to every class
  • Supportive online creative community
  • Learn offline with Skillshare’s app

Why Join Skillshare?

Take award-winning Skillshare Original Classes

Each class has short lessons, hands-on projects

Your membership supports Skillshare teachers

Learn From Anywhere

Take classes on the go with the Skillshare app. Stream or download to watch on the plane, the subway, or wherever you learn best.

phone

Transcripts

1. Course-Intro: Hello, guys. I'm side and I've been working professionally as a mobile app developer from past two years . Before that, I spent two years during college learning about Android from the Internet. After finishing college, I found it incredibly difficult to figure out the next right step. All online courses taught me about making a simple Andrada, but now I wanted to make amazing ups the kind off APs that catches the eye. Sometimes from its responsive design and sometimes out off its simplicity and practicality . Android has bean in the market from past any of with every new update. The ecosystem introduces new ways of doing things, abstracting low level details of the free look, providing better mortar, all the state not to forget about the open source community, which is always coming up with amazing libraries and plug ins to make our life easier. It has become really important to stay relevant in such a dynamic in land. With this close, I want to make it a little less painful for you big that next time, and also to stay relevant in the feed leaving discussed about ways in which an app can become from good, truly amazing we will talk about some common bottlenecks in creating an awesome app and how to avoid them. We will see some simple customization that you can do to their existing ups, some out of the box solutions, industry accepted libraries and plug ins for everyday problems and some easy to use frameworks. All of this we will be doing by making some basic apse with simplicity and awesomeness as our end goal, even be creating those abs. Together we will focus on one major area for every app like recycler views on discuss all possible variations and customization Throughout the course, I will explain every step and possible alterations while we complete the up. In the end course, there will be a final project as a challenge for you to try. We have one prerequisite for the course. If you have not tried android app development before then it will be a little difficult for you before Before you start this course I would like you to go through some introductory calls on Android Abdullah. We're only going to focus on certain concepts and areas off Android and it will be really helpful if you can already connect the dots there are tons off, amazing intellect, trickles, and I assume that you have taken at least one of them. Let's make some amazing up. 2. Overview. What will be covered?: Hello, guys, and welcome to our first Do you do so in this video. We're going to talk about recycling views and why recycling user so important and writes it is really crucial in tow. No, on the INS and off the books Recyclable. Well, I should think about any application 100 app that you can think of, then list for a very crucial part of them. Almost every app has some sort off list. Either it is that core functionality. For example, Twitter or Facebook are you have a list off data somewhere in the AB. Let's start by seeing some off the examples of recycling things that there are. So I will goto play store and let's look at Facebook. In this particular snippet, we see all the comments being coming from the and the scroll up. Uh, as new comments keep coming coming up as people live new government here, they're using real like love you, I'm sure, and it gives you an ideal on in financially normally cycle of your list item that coming to the screen and they keep going, keep rotating and it looks like there is no end theater that is being shown on the list. Fire If you look at maybe critter here we have all the treats and you keep scrolling and it shows on the screen. This is again a recycle of you. Let's discuss some some of the edge cases off the cycle of abuse that we loaned. If we would not be New England, the only way that recyclable from assemble. But still we have just worked for in it for a few days. Um, for 1st 1 that I can think off is in connect scrolling, which is which, as discussed, this president in Facebook Photo as you scroll through the list. No, I don't keep coming up from the bottom. And the list keeps going on as if there is no into it. Oh, again, Facebook or Twitter is a great example for it. If you look into Facebook, we have different kind itself. Oh, news feed articles over there. So here we see an image. Some I do do it some text, and maybe they can be a checking update. Someone check them someplace and they will be integrated. For that. They can be a collection off images like five or six initials, as add more. There's an add more butter, new click on it and it shows all the images. I Maybe there will be an optically so you have a small e introduction kind of thing, starting fueling of the article and then you click on it. It opens the article on a in the that view, kind of things off that is, there these things. So I've been using heterogeneous recyclables. Recycling view is generally created using or taken linear loud. It can be changed based on the flag, horizontal or vertical. So my default it is vertical, just like the news feed off Facebook. Or, if you notice here in the story spot, we can scroll horizontally. So this is also sells only near Leo. It can be school horizontally. Oh, and then there's something gold is a great layout. On Instagram. We see a very good example quoted. So here this is again a recycling. But the orientation is in, is working, and then layout has more than one column three columns here, similar to Greg earlier, there is something called a staggered good old, where the items don't have a fixed width and height. There's some item which has just really big in terms of height. If you take that much hype Similarly, the test too big. It will spend more than one column on Facebook. We see this a lot. No. When we go toe to a list of images that indigenous to stagger look in some contacts up like this all the contacts that start with a our group into one captain video. Similarly, all the items excited being I go into one category. So here, if I scroll through the list since all this guy all these contracts start within a that particular group is will be named as a and it will be some were insulted right in front of that list so underground that started with a will have one group named Group Header whose name will be a and then you go down there will be one entry Could be then all the contacts that started be This is an example off grouping off items based on some criteria. Then there are some variations to it. So one of them is expandable Recital of you in expandable recyclable. Initially, you will only see the name of groups. So when you open this contact list. You see a B, C D e updating, Cruz said. And then when you click on a all the contracts inside Ariel visible and you minimize it, we opened me all day on tax and people, this is expandable recycle In this particular example that you're seeing on the screen is known other sticky recyclable, because when you scroll through the list, it will just stick to the top off the list. And then you keep fooling when you reach, be and being district under tow. Oh, so both expandable recycle of you and stick it excited are very difficult to implement, uh, like natively without using any libraries. But we have very good oh type body, like really strictly my never I really classify animation in to do. But the 1st 1 would be how the items are entering this cream. So let's say that we have five items that we have been currently going to show in the user and is a particular screen question is how they should be stand up when Jesus comes in for the hosting. So maybe it will start coming from the bottom stack like that. I'm from the left arrayed. Oh, And then if new item is added, let's say on the zero position of the list, I have a new item. What happened to the less rest of the list, So it will go down one step. All these things are like basic animations which are provided by any fall from by recycler view. And then there are some other kind of animations which you must have seen on instagram under the sun chaps. So when you click on this small heart, it will change its color, I hope, I guess, Or maybe drill scale up a little and then it would go down. Oh, so this is happening. Oh, using Understand Imation Abia? Well, it's easy to implement if it is outside of recyclable. But having these animations around when this particular item view is part of the sight of you is a little bit tricky and this again requires us. I mean, looking at animations from a different perspective. So the first lesson we start with some tell me about exactly use was that political lessons are done maybe in one or two videos, beings which toe will start quoting and so maybe the first lesson, including will be We will be creating a very simple nest, just adding a very basic like, Oh, what do you see when you find some other? When you Google how to create a recycler view the base code that you get will implement up my new also, uh, be cautious toe cover on the edge cases. So in a sense for recyclable can be. If the Internet is not working correctly, it's too slow. Then what is visible on the screen? Or maybe if no data is coming, then are you showing a blank screen for that? So how do I handle all these things will cover in this first few videos for the first lesson in Cody in the 2nd 1 Maybe I'd a functionality for searching through the list. Uh, as an example, maybe you're on a shopping used shopping up, and you want to search for some particular product and you see a long list of recycling news you want to search are all you have a product you type happen. Shows already happened. Then we look into her true genius list. So we lag two different kinds of items. 01 for the head of one for 30 days. So they said, you know how to add trillions list and also Group A group similar kind off items into line but section. Then we'll see how to change layout. So there's lean alone is greatly August. They're staggered. Load. Oh, it's not ready to think. Maybe Easy Hollow. We'll see how to dynamically change, then the Leo. After that, we see how temperamental basic animations I was talking over when we switch the load. Our I don't getting stand up when it's searching toe list real how the list is getting stand up and finally even. Yes, I only shut up. Oh, so that it's presentable. You can show it to someone. Nothing more here in polishing the amber. Just a few pointers like so that its present a good and it's just doesn't look like 1/2 in traffic. In terms of projects will be the going to project. So one will be the follow along project it I'll be making a new I expect you to follow along with me. They call it the Pirates Project. We'll see how it is. And then, once we are through these videos about insect wings, will I just put an empty blank project kind of thing when you have a date astri and you're supposed to follow through all these lessons and use with Rahman and create your own kind of small. I have created the whole CDs and, uh, I mean into separate branches and it just pushed on top. So I give you the link, you can pull the cord and every lesson is a separate branch. I assure you how it is. Yeah, so here you can see someone Listen one end. Listen, when start, listen, toe endless and listen to start. So in every video lecture will start from listen, whatever eggs start and then we start following or not following you should be following me along from lesson one start, and then we'll go through it when, as the lesson ends, maybe the whole particular subsection, Then we'll reach someone. And if everything works fine for you, then you should have a working up working section reported looting or, by the end of lesson one start. If not, then you can. If you're stuck somewhere, any bugs don't even compare it off. Progress. Whatever you have done with lesson one end and then you will have a good idea. Some reference to follow. If you're stuck somewhere, we go through this until your sincerity. And by then you will have ah finished up the follow along project. 3. A brief history of lists and adapters: - I think this is the first medium, but I'm recording it at the last. And this really we're going to talk about some theoretical aspect of recycle view are in general why we need a list really on may be a list. If you think off any Fame book it requires, it's developer toe. Render something on the screen. So there are a couple of basic elements which the framework provide. For example, Android provide some buttons X for you and text. If you have any basic understanding off like off and right, you know, all these things separated similar kinds. Off things are provided in IOS framework as well. I remember there's something gold issue, a label and all those things, And if you look at it's dammit, which cannot be considered as a framework, it's more like a markup language. But things are getting this place up on the screen, and even there light a buck in in port feel and all those things in all these frameworks on things, our applications that allow you to render things on the screen. Uh, they provide a bunch off items views that airhead photo development application on list is ah crucial part of it anytime in oil development. Any designer developer is definitely going to need something which makes his work easy off this plane. A sequential list off data. Let's take an example off a list off route. Oh, we have, Let's say, five items. Five lists off a list of our favorite five fruit, and he wanted to be displayed on the screen. It should be on the screen. It should be like a sequence off view items that are particular about that blood form show in Android. Maybe I want a list off text views in its Tamil I want a list off. Oh, I don't remember what they're called. It's I want buttons with name off fruit in its everybody in tow. It depends on the platform, but everybody from requires it. Displaying a list off later is really crucial for any frame book on Well, Android is no exception. So let's just some get some clarity on what on after is so if I look at its literal meaning , the best example that comes to reminders. Those traveling actors that we use. So this is a travel adaptor, and I think in the most mainland domes, I would say, Call us, uses a different kind of socket. I think these flag pin ones and you're open rest of the country, even in their uses, these round ones. So if you're coming from us, oh, you cannot use your flat pin chargers. So what do you do? You carry this handed 100 after we do, and you can plug your charging adapters to it and then plug this travelers after into our soccer. And then everything works. My this is an adapter, and I think it's a very good example of it. What it is doing is you have something which is not going to work with another thing. So an adapter is going to sit in the middle, and it's going toe. Make it possible that you can connect to the other other parties in dorms, off recycler rules or list use list. They all of these lists. They rely on a list up later, So on one end we have list off data, so if it's fruit, it will be like list off strings. Something like that, and what we need on the other end is list off legitimate views on the U element especially to the framework. So as you can see on the two ends, we have something like clustering that is going to represent I can enough data list and on the other. And we're going toe omit New Element, which will make up the final list with User can see and they're pretty different. And that is why in the middle, we need an adapter. Recyclable requires an adapter, and that is, well, logically. It is the same thing, but it is a little more complex. But the basic idea is say you have two parties and they don't match up the repairs on matchup So you create an adapter in the middle is going toe convert data from one form into another. Let's see what android offers for a list. And when these Paradies What I think Android. They created something gold as a list for you for displaying list and go. It's a very regular, valid name for it. We have text few. Similarly, we have a list for you and works fine. Let's just see how it looks. Yeah. Oh, just like we discussed it. Wants requires an adapter. So but in case of extreme, they already provided, Ah, bunch off adapters. So if you're dealing with data every skulls, you can use a coaster adapter. If I just explained something as simple as you know, like a list off route, you can use a string on apple and then for exceptional cases, you can override a base adapter and then you can create your own. Oh, so this is how just you used to work and it was there for quite long time. Let's go through. Why? If listen, Iwas a solution, then why did me to To recycle a room, Imagine this particular image. So we have some items on one toe. 3456 items on there. And let's say they're showing our fruit. So we have six foods have been shown here. Now imagine in slow fruits, let's take friends. I have six friends. I'm showing six friends, no less. Imagine someone who is really famous and he has 200 friends, so they will be 200 items in the list just fine. Hollywood behind the scenes. What I work list for you does is that it is going to take all 200 names and it is going to convert it adapted into the U element that we're targeting text you or anything. Imagine we have a list of names. So how much storage us one on one name would take? If it is a string? I don't know. Maybe one bite, Let's say, takes one bite. So 100 names is going to take 100 bite now when it gets converted into a U element, you element has color. It has a bad grown. It has pixels, so pixels are colored. And all those things the size, the sheer size off the two element, which represents one name is going to be much, much more than one bite. Let's just say this stand bite for every u. A. I don't like to see on the screen. So 400 items in becomes like 1 10,000 kilobyte. Yeah, and it's too much. And we're just considering the final size off. I didn't and it takes a whole lot of processing power toe inflate allowed that will also counting. So overall, if the number off items in your list increases, then the memory requirement for your list murals increases. You can say that New York list you is dependent on number off items that shoes. If it is one too many items, memory requirement will be really high. Everything less items. Then chances are the requirement will be less. And this is really bad because you have to give an upper limit toe number off items you can show on the list. Because if you walk, if you exceed that limit, your list is going to crash or feel something like that. So this was a problem, and some really clever their lovers. They found the Central Crown. Is I on this problem and we'll discuss that inflating news. Maximum time that is getting wasted is one thing. We're inflating too many views. So if there are 1000 items were inflating 1000 views and views, I more It takes more stories than same item in your data list. So that is one problem. Second problem is, inflating items is a costly process. Oh, so these clever developers they found over ground for the second problem that is inflating items is really mostly and the book around is that no, they're not inflating an item for every time you have 1000 items we're not going to inflict wasn't different views instead of night we use a pattern. Nunes. You hold the fruits of design back in on. We are going to hold an already created view in the memory. And whenever new rate I supposed to be entered, there were just going toe. Replace all data with new leader in the view holder because it's holding an already inflated view. A little difficult to explain, but you can just Google of you holder designed pattern and you'll get some really good insight. Just think of it like this. Fine view by I d. This call is really expensive, and you want toe renews these cards so we use something goalless of you holders that is going toe hold and already inflated view in the member. And we're going to create ready less number of these freeholders. In fact, only, let's say, if an item scan for your screen so we'll create, maybe drive, and this way we're not inflating too many items. 4000 list 1000 items, only 15 views eating in bladed, and it's a very good So this is what the never visited. They switched toe lest you will be Waldir and it was looking fine. Oh, so that was a time when a long point was about to be released and with Lollipop Google introduced material design and with material designed, they introduced a lot of design elements as well. So that was a time when carve you came out are respectively was introduced, coordinated, layered was also releasing lollipop eso recycling you. So this was a problem and we're holed up with a solution which was being used in less true what we wanted Waas that newer developments should should have a better option. And so they released recycling of you it It will only work if you have that view if you're falling the view under pattern. So if you have already won recycle of you you know that in an adapter we have to create of your holder. So that came from list for you because developers were using it and it was really good baton and recyclable like you have to use it. There is no other option. Also in less true, there were some other small flaws like animating go Mistral was not so easy and recyclable . What comes next? Really? I guess so. This is another big reason they're not a couple more so you can just gooey what exactly was his list? Real. And you'll get some nice point. Okay, so let's just go toe the adapter. Not be grateful. Recyclable. So now we know that we need an adapter that is going toe convert our list off data list off models in tow. You element so wonders this adaptive requires in case of recycling you. Let's just forget about you live. Oh, no. Apart from the holder, it requires do things. Firstly, we need to tell our adapter how many items are getting the list. So list off route. I have five fruit, so you have to delegate. Okay, They're a total five foot our Mr Off names. 1000 names. Okay, you have to tell it. So when you extend recycling, build out and after class your toe overhead. Three metals among those 31 is get. I don't count very happily done. What is? Account off your list in this case and it s it contains all the reader list A string, So yes, this is returning in the land On this second thing, you have to tell what is the U element that you want to miss play or How does the U element looks like that you want to display on the screen? And for that we have a method part on creatively holder. In this particular overloading method, we're going toe inflate of you that will be visible on the screen. And we're doing it wrapped inside of you that this forget what we will never know. Just remember that in Creative Holder, we're returning the inflated view which will be displayed. No either. Told you for a list of 1000 names only I don't know. On 15 items are going to be visible. This own create beholder is only going to run for 15 times at Max because that is how many items can be fitted in your screen. Not born in 100. So after on create on. Actor wants us toe. Tell him what will happen if I want to display new leader who tends us. Okay, so in various, apparently scrolling the screen on. Maybe I'm We're trying to display some data. This is a date I want to display. This is a view that you have told me or behold it actually how did displayed So we have a method called on mind we holder where we bind the data, I would give you holders. And this is what is happening in online. So in view older, which is holding our view, which is holding like extra. In this case, we say ordered, not takes you, but it takes from the data set. Get particular string value a disposition in just stated. So that is what is happening on when you're older. So these are the three metals that you have to override. I'm getting item count. Firstly, telling it How much did you have when your hotel It would kind off you element, I want to show. Then you have to tell it. Okay. Provided the U element on the data. How do you want to show it on the screen? So that happens in online beholder. I hope that you already have other letting with recycling views. And Terry is really boring and it's confusing. We are going to see how it works. And when we do well, you that more gravity on Let's just one finally time. See how we hold it looks like. Okay, so I was not able to find any of you holder in over there in Android docks the training model. So let's just look at this year old. It's very simple. You extend of your low class. Then you have to define all the elements that you want to be updated. So, for example, you have list off fruit. You want that particular export, which can, which will display the fruit name to be updated. So you will be finding here on in the constructor you're going to inflated and it's so there is an imagery as well, but that image is not going to be updated every time. So no need toe seemed that image You here, Only things were going to be updated. You're going to Oh, put here. So you hold it is like a container for your view. So we have covered. Oh, by we need something like a list list control in frameworks. Then we talked about why we need adapters for lists to a more done adapters and then we don't about the first thing which is list real. That came with android and then why this tree was not so good. So they introduced recycling you, which recycles the item use instead off creating it every time and it seems. Memory list. We was already doing it. However, Now it's official recycling. There's no other way. And relax a song a little like how toe how create adapters not really create, but the different parts off adapters. Awfully cyclery the first. Listen, we're going toe start quoting in the first lesson we're going to create a very simple recycling with all these things that we discussed. Andi, we start from there and will be more clearer from there. 4. Setting up project: any place. Welcome to our first according to the father Siri's. Um So the first thing that you have to do is pull the whole project from this Could get up be well, I just based it in the description of the lesson note. Just copy it and basted in your address bar, and it will redirect you to this page. Next, click here alone or download and copy this. You really? Oh, And then open your formula. No, goto any. Oh, very clever. You want to pull this cord? Well, this logic tried me putting it here. Oh, this is an ambulatory. Creates a religious type it alone, and I pay 60. Was in, was blown the whole project when staggers done open Android studio. Oh, so another project is opening my under struggle. This might be the case for you as well, so just go to file open. And, uh So this is a folder where I pull the cord, just skate, share hyphen to roll. It can go here and click open. No, I'll just let me window. I just close this. Yeah. So this is our project? No. Oh, I want to do what A view golds and then select them. You know, this opens a dominant, richest present inside. I understood you and we can see there. I mean, the branch. I know she can. Good. Come on. It's a big brunch. We're currently in the master brunch, and it's that great nine Typhon. Aurich was Who cares? Two hyphens which was on the branches. So I want to go do the first lesson. Big Jack old. Let's see one. Because I have changed to this particular Listen, let's just run the brother. So you know, everything is working. Fine. Well, if this comes take, remember, he had select No, Our project is running fine. Oh, in the essence of kept it too, since I And it contains a list off various ships present in Pirates of the Caribbean. So I understand from by its very could we keep it so you can see this is a bully. It is Captain Jack Sparrow. Lend weapons. I got the ship and then first appearance. Which tells me, like when did the ship first appear similarly? There are many ships apart from this, we have data folders. Enough java, Many wherever we have the cool inside did you have a mortar. Oh, which represents this Jason objects. So one of the 10 this Jason Terry is represented by a mortal. We have the name of the ship, Captain lend towards type first appearance and on additional field called Happens favorite color. What we want is we want to have a Leo like this. And a captain's favorite color is used for this image. Images are subject to copyright. And also, I'm not using actual images. I'm just going to put some kind of color here. So this is for that. He meant captains. Favorite color about From this there is a constant fail NATO. Constance, I have a high level position. Uh, the Jason keys. So whatever is there in the Jason file, those keys are present here. It's good to keep them in. One separate place. Here is a glass called a tell U turns and NATO. You tenses. What actually takes the Jason file from assets and it converted into and released off ships . So this is the global, uh, list of ships that were going toe broke on. So as you can see, it will be empty. Beautiful. Then we have a method called get all ships and we need to pass context to it. Then we're going toe access assets and get that particular fighting as input stream. Then read through it and we'll and what did window A string force then will convert that string file into adjacent after it is converted England into adjacent area object. Well, it read through it, and we owe serialize it into a ship model object and favorite into our global ships. Idealist. So then we have a medical get categories. So as I don't do in, like, really separate, please this videos night, we can create a grouping kind off thing in recycling and each group or a degree. In this case, I'm using the first appearance as a category second clean C year. Oh, on the ships that were first copy that first appear on the course of the Black Pearl will be on one category. All that were present on I don't know on stranger dates will be in one category. So for that, I'm using this metal, get got degrees, and then there is one method just and it's a random color so that I can just use that color as first captain. Favorite color. So that's it for what is president enough? I don't take no. And now we start, So I mean good. 5. Setting up recycler view: alright guys. Next I would want create a very basic recycling you which will take her data and it will populate. Oh, it in a recital of you and swollen begins. See some later on the screen. Before that, I want to create some assets sources. Most of them would be a background color, which will be the pews, as profile pictures are the picture off the ship. So create a new driver and I'll call it Media for background. Let's since it will be a solid color and it's going to be your shapes up, so it gives me the selected by the foil. I need a shit bag and your shape, but I'm grinding. Woman is going to me only next. I'm going to give it a solid color. And let's use of accent. Uh, I'm going Plastics. There the exhibition size on. I wanted to have a black border around. I used a stroke and level of the cost to BP and exhibit of color. Yeah, this is how our provide a ship picture should look like next. I want to create a layout for that item off. Recite clue. So I created a new field and I'll call it Bacon List ship. Uh, for this reason front atomic liquors. Well, once I critter created friendly out 400 I can say it is an item and you just got good and it represents a ship. So makes element. What? So you some meaning for naming convention here and then sending out Let's just stick toe girl relatively out. Get out of this type would quickly and then we'll get back to it. The Venus copied from here are the lesson one and finally. Okay, So got done right. Creating the nay out furnace. Oh, a few points that I want to add One is that I'm using text appearances that are already defined so you can always use them. We just have to use the text appearance, time and mention and it's tied extra appearance, and then you'll get a number off different styles. You can show them on them. So this medium arch display one display until they have different sizes. So if you're just wantedto prototype something quickly Second, use these text appearances. I mean, they look really I'm in Great. Not not very good but presentable in us. Then there is this true specs. Instead of defining actual takes, you can use do it sticks, which is going toe. Make sure that whatever takes your typing is visible or over here in the preview. Dang. But they will not be visible when they're a new landed. So in cases where oh, open admission doesn't have a captain. So if you use a regular text like Android Thanks. So in business, no captain is going to show like I told by both sides before. So if you look drawn, don't live in this. Make it cooling stakes. No, no, that is better than incorrectly. So that's why we have dunes. So you can use to mistakes toe SRC there, many of us. Okay, so we have created our item list. Next, let's create a recycling you, so I'll goto activity mean Okay, so we don't need constraint layout or anything. I just replace it with Oh, it's like love you wrong closing tax. So I disclose it here, Mel, replacing with everything from your school bars. Really direct. So stole my should reverting. I need to give it an idea. So ready. Neither is a clear view or this. Okay, So mixed. I want to create the doctor s so I'll just go here. It should not be in there. Council just go here and I create a new Jellicles called ships are not good. No, I have this. Guys. What I need is of your holder. Oh, so firstly, I create of your whole look. We'll keep this in mind. Whenever you're creating an NFS, try to make it static. This avoids memory leaks. How would the words memory leaks? It's ah, It's a long story. Not just given my present in that class. Make it static. This way it is linked. Will have a separate like single independent off its out of class. And it is not going to leak objects defined in the order clash. So classes agreed. A static class cold ship that's going to extend. It's like you look Oh, so what do I need? I need to do this planning rich and you can display a fixed which is the ship name and then a text for Captain. So I great three objects. One of typing is you and I got it. Sheikh image when I need it, Thanks to you. Medical it? Sure. I mean, then another picture for Oh, I need a constructor. Pro trump good for constructed is control. And on windows I don't remember something controlled. I mean, really. And then I would construct. I will select none of these. It's like none en it. Recreate me or constructor and I each legs all those things. So I mean, you guys, everything apart from this constructed I'm also going toe toe create a method which will be called from on by interview motive. And it was going toe fill all the design these feet. So ongoing. Boyd One mine and I'm going to particle ship and its you initialize captain E Chip rock. Yes, you and B V sit me and ducks and pigs. Okay. And then I need do initialize that humans you generally. If it was an image, I would be using something like Muslim ish load off our Picasso or glide that is not any rich for this. So I'm going to change the color of it and I think you help to do it. So there's something going. There's a radiant drug. I really should come. It's not getting background because good on me a problem And I have a God strip into agreed and driver. Okay, Megazone. No, I can close. No, I will look set and I can pass it the color. However, it takes a color state list and I need to use color straight list or gladly off. And then I have to pass my color. I'm not captain saving you mean better. That requires April 21 0 yes. So what you can do is if it is not a pure level when given you can give it some before color. Just leave it as it is. I just wanted to have different colors to represent images of profiling. Minutes looks better globally. There will be doing this. Mean using actually millions. Oh, so you hold it is ready. No, we need to create our recycling. You initializing the after class to extend recital of your potential and just do extremes. Looks like you got there. Have the last name off our happen. Richard ship. Look, it wasn't What is it? Seen Must be clearly implemented. Are so we have three minutes is that we need to overwrite. We simply press well. Undrawn. Return again. Go here. Human methods cream average. Firstly, I got requires a list off. Normal, not get ships. The starships procreate, and I realize for that and here. Okay, I'm going. Well done. Harmony. I didn't The death in ships ships that size. Now let's recording on greatly, Holder. I'm going to regulation Isaacs variable. Well, the my including our commitment. Oh, I didn't exactly find that we created. So you have inflated out from so context. I'm going to spare no get continuously of speaker context, and then I'm going to pull in Freak Oh, are not really out. Not I don't wish it. The brothers of your group just creating lexi kinds total some vegetables and I become a ship feel holder and I passed the I don't do it. No. In online, I'm going to call hold on Not on right and plus provisions to a particular ocean and pressing. Who are we holding? Which will initialize everything So our Annapolis really is Whenever we get new data, I mean, let me so much something and they were totally 13 ships. And then we said, show us only the ships which contain a character, and that reduces off number of ships to six. So we need to refresh the excitement, It's open that I mean, when you type said, is that going to greater September 3rd from you this look ship, look here, Mostly clear on the ships are already there. And I will say this not ships. Not I only Oh, that's name it. New ships, some for some clarity. Yeah, and then after calling motivated us I think so. That night, after Nell's unionized me, nothing only in England after still connect everything. So that will happen in main activity personally, a global list of ships. So I just created and then I'm going to mean another on. And why is my laughter global? Well, I will be updating the adapter in later in later stages. So all these things, like a doctor What a recital of units go to keep them global my own create. Firstly, I'm going toe finishing six weeks I clear you and then a great separate My could call a couple list. This matter will be called under construction and will be setting a playlist here. So what do we need to set up recycle? Firstly, we need to set up a little manager. Sure. Exactly. Real dark city of manager acquittal. Newly nearly manager past convictions, you say? What is the old impatient? And then is it the lowest on mark? So it's not, and I'm having a bakery. So that angry these vertical lines with me Greitens add item decoration, New Levi direct accusation with being alone. Yeah. Then I say, go. May I help you? All right. Yeah. So I said you need outward, but I six ships not clear, safe. Stay for Major. And that's a ship's not on on. Yeah, but no ownership by the context. It's like I get a list of all the ships, and then I see that would not chips and organization. Okay, Everything is on it. And the cold. Okay, so I get a list off ships. Well, a very basically cycle of your husband set up. She have any problems? You're not able to fix it. The other lesson. One end. Bryant, Don't just change. Here. Go to get heaven. You can compare from there, and it's pretty straightforward. So you media people six. It it's catching. The next week 6. Covering edge cases: Hello guys come to life. Listen to in our series. In the last lesson, we created ah basic recycler view which shows a list off ships vertically as a journalist. And we have the captain's name, the name of the ship and a small image kind of thing there button stroke image. We were showing a smile, a rounded driving with some and I'm color in trade. No, In this video, we're going to I add some cases that can come well showing data under secular view you. But first, let's change our branch toe lesson toe and that can be tricky. If you know too well, ghost will get hub. So firstly, I would like you to goto view and then opened the dominant, you know. So firstly, let's see what what is the current branch? So I say good brunch. And it is this in long stock you should try toe check out to listen, to start explained, even ever, because there are many fights that you have, they changes to, and it doesn't know what to do with those funds, for what we can do is we can see what are those fights will type big staters Okay, so there are many faith. I just say it on aan den escaping. So they have been added when I created comic. So it's a good coming If I m were you Listen, one completed some message. I think now we will be able to check out toe the branch next trade. Yeah, So now I'm in. Listen to let's just around the cold front. Yeah, So this is what we have right now for this part. Firstly, I would like to create a separate screen. It is going to be shown if there is no data analyst and it is possible. I mean, if it isn't, it's local, and it's highly likely that network calls fails because of interconnection or something like that. So women drivers separate screen for that scenario in our drivers, I have added this one tribal that I, fresh from Android as it it's a boat and I've colored do and also in my string start example have added these two messages. I'll be showing these messages in the North ships from screen to I've defined it here to save time. You can go through it on, I think fancy going on you. I have a linear load which contains much period and gravity center on the double food. I have individual there been a blue boat then I have fixed feel but with some lines of takes, Some funny things you would want to show Do you? They do engage them Now let's open our activity made. So this is what it waas earlier when we left it in the last lesson I have a recycler view. What I want is I want to add ah progress. But that's a round circle that keeps the tells you that something is loading And then I want oh, on that layout pirate list empty that we created. So firstly, I'm going to wrap it around recycled a relatively old school after copies of them think like that means space. So then all those things so exculpated. But I is not required to remove i d and I'll put recycling built in the end. Okay, so I have despaired control. I have my recycling of you. I can move this tourist context line. So the parent view Uh, sure. Bruise here. You don't need a building slain boys on me. An experience that I could remove those. I am a recital. You have my parent layer, which is a little a little note. Next I want to add Ah, progress. But I lI is doing progress No. 2 December swelling Sambolin. Brilliant, True visibility. So my before I wanted to be beneath the and and I will probably it's oh, visibility. Once data is loaded, I want to create a politically out. And this is going to be a rapper for that pirate list and be on, but with the ability will be gone. So initially, I'm thinking very some data coming and I'm gonna completed an ivy are relatively little. No knowledge include that public real transit in gold Pirate list MP. This is it in the family nailed next, we'll goto main activity. They were going toe Add some cord far handling the case when there is no better. So, firstly, let's just tag so long like it there is no they don't know. It's easy for debugging. So this is not good for that this time, and old deeply is going to land a bag. I mean, I got final string for using a dog drugs and then I want to drink on the plane when constant in video, just like when we make on a global. So as you can see, if you're getting a data from and I said sweetly and they're pretty far, so they will not be any dealer. But you want to make a guess so that we can see that the brothers about annoying. So we're going to give it up before the so B s If I which means public side, if anything. And I call it Nytbook Really And it would be 3000 this piece engines next, all the new components that added maximally up. Firstly, there is a rapper for Do Mystery show and there is no data so next, so effectively out, I guess I call it R l no big are you? And we have a progress. But so in total, we have three things. Let's listen, even knows all of these. I didn't know going with find everybody. Then we have progress bar in second placed. When data comes, I would assume that it is going to take some time, so I'm going to show the progress. But so open, Say said its ability. Next one speaker guns. I'm going to make it invisible, and then I'll take if there is any ships present in this ship, if there is, then I'm going to just disable progress. But and then shoulder Recycler group, there's no later. Then I'm going toe hide the recycling of you on the progress bar and then I make this as visible. I didn't know that well before that. As I told you, we want to mimic on a truck request. Best way to do it is using the small handler. So now I'm going to create a handler. Very easy. New handler. Our post BK. It takes a reasonable and leader. So I know my bill is first Wikipedia on I ran a bully is meal credibly. Okay, the, uh so this score really run after three seconds for and retreat against me have progress by basically after three taking Firstly and would do Oh, disable the progress. But in any case, the leader, because bodega and then I make a call should be illegal. Did you guys get on a ship off this? But this is not working with its inner plants, new animals. So I have to do being a curricular this next high tick If ships is MB, Africans and peaceful except have you got it's glitchy visible. It's like love you Visibility of Ghana. Yeah, Mexico, if it is not empty. I had somebody natural. I accept. I know they attribute about sex visibility. So know that you should be going cycle of you if it is going to make it visible. Absolutely worst thing meandering here and then I'm not there except ships. Great. So these are the stakes that we have to dig and there's this. Try and run it. Okay, so there's already some data and I see the progress. But, oh, why would that be? Well, yeah, So here I'm making another coil for ships. And that's why I see on the leader already present. So I just remove all these lines and then I'll run pretty nice loading. Then I see the list. Let's just take once. What happens if this noted so here. Once I get all their eyes, he ships not clear. So Oh, now there should be no data When it comes. I cleared. Should go the van spark. Yeah. So it's going to show this cream. So that is it for this part this lessons with this one. But always remember toe consider this scenario is, well, if you miss it and you just see a blank list a blank screen and it's not build sure uses such a blank, empty screen. Yeah. Thank you, guys. The next three next video, we're going to talk about homogeneous. I mean, had craziness police. 7. Adding search functionality: Hello, guys. Welcome back toe Lesson three. There's a small correction on Listen, toe do that. Next, we're going to live with retro genius list. So I'm sorry. That is a lesson for in lesson three. We're going to add search functionality, toe recycling, real cause, forcing me to check out to listen, agree Brunch right now. Really listen to stock. And I think they will be many fights with her yet to be from the Goetzel. Like the last lesson. We're going to look good. And he started and release a comic. I from them. Let's improve, Finished anything. And now if I look good status fights ago, so is a Jekyll. Please start. Yeah, it's just trying lunch. Let's just see. Oh, but wilful recommendation. Does this about such for the school? Go socio, Andre. Yeah. So I followed all these things you can feel free to read through it. Finally, it's going to look something like this on the tool but itself. When you click on the search taken, it will expand and then you've been taping Do it. Snacks are very aiming for Just go through all the bullet point on how drags or first thing ask us to create a searchable configuration from very figured all the hint and the app name . We need to create it inside the excellent folder. If you'll see here. So Alexis to act quickly. I go toe audience When I'm on Android here I goto arias, right kick new resource line from resource type. I select excimer on the file Name I for guys searchable changes to search and you need to pass a labeling so it will be the cream Everything. But she had a little leader extremely expensive. You can you stack next thing that tells us to create a searchable activity. So this is how android and is expecting its search to work So they would be one activity whose sole purpose is to handle all search queries. So no matter what, let's say you are in home screen user searches on home. From that Baines, a list off. I'm status update. So if you search there and right things is the request will goto this searchable activity. It will. So it's to your database or wherever. For that particular whatever was the key, the query that was passed and then it will return. The result If I said happens in, let's say some other screens. Convenient, honest, off contact again. That request will go to searchable activity, the same searchable activity. It will sorts through the list on its return. You the response. So it wants us to create a searchable activity. So what we will do is we will use the same main, actually, that we have a searchable activity and there's not much. Definitely. Do. So first thing is in searchable activity inside the manifest. We have to use this intent filter bag, and then we have to tell it Where are searchable configuration file that we created There it is located. So I'll just copy these two lines and I will open Manifest Shortbread is shift command, or and then you can type your fight him. So I want money. Wurtzel and Peyton Manifest. Okay, so, I mean, I really hope arrested. Okay, so next thing it says the farming, the source. So there is, um, Terry here using the search box. 00 Anderson district suggests us to use the different kinds of searches. One is using a search panel. So you click on a search. Martin on dialogue appear so you and your search query There. Other thing is, uh, it should be somewhere here using a search widget which we're going to use. So for this many to create a new and menu should contain that magnifying glass the icann for searching that we have that So, Chaiken, I have important it earlier. So present only thing we need to do is create a menu so simple in arias again, I write tick, I go to new New and resource Fine. A pop? Well, no, we menu on, and I'm going to name it such menu. So the media's really I had one item put. Did Glavine Avery off action food would be required to never paper. So it would be things hurt. Yeah, next thing. And he's glad. And I could I have a search I could on writing that mixing well, intruded beauties will so sure. Action always isn't looked blank for when you're using a search, you searching is the unit will be open on the Gruber and it's called blacks. Action you on then the little mention of single action you class which is going to me, hurt you, but it's not walking up, but So I think we're supposed to use a pew. So we have prepared a brick on droid, but support B seven, we could for true. You are such a cool by. The new is over. Now let's what do mean activity inflicts miss menu. So I have to override on auction. I can on create, auctioning and then I have to use the menu Inflators on inflatable minute of you just created so many new Not so much my name and I'll wriggling through ways It is surrounded wanting tea. So we knew CR search menu here, and it looks fine. It takes Nida consulted. What? Nothing happens with us. We're not handling that such What on red suggest is we have toe send the search query using invent Do I search activity? So on these extending off such Grady that user entered so that when using in pink and then the activity which is the first activity And now the search activity can I will be open like in our case because I mean activities of so much activity it is already loaded board It might mean they destroyed and it will be created when it receives no such that such request. So how to fetch other The grief the ready from intend It happens in on Crete. So if you see here in me, an activity on create is already has already done. So it is. Ah, another over. I overheard in matters where we can access the get intend method toe, Get those that search query such G But some For some reason, it's not working in. I did tried a lot. Oh, so then the worker on for that it is our menu contains a search for you and look, we are going to do is we're going to add what next listener to it and listen toe whatever they're asking us before that next, just on this more mature but handling this would garlic my worried finding such in Highland Search ringing string search quitting and it is going to freak out. The list of ships is rendered service equity and that updated list it is going toe pass the adaptive. So this is our best search query. Let's create a new list, Alex, search ships and heydrick were present list We don't have toe. We should not a bigger originally list or here have also added a new class called You Guessed and I have a few methods here. For example. Well, I am this take with oil was weak, ace. And so if you surrenders, let's say b a r for Barboza. I want to check for capital. Be small. A small r o are small Be small but a smaller So on the kisses on to check for that. After this matter, you can see all the company native will infuse this ship associated with, I think is going to shake for me on drafting me from the ship. Diligence True. I search good Cipto research ship list. No, we're getting this case a break in after Let me have a new set of ships. No, I meant to call this method. So in our on grid options menu, you're going to kick I listener. So let's just any side their first few men Yurok, American Ivey Action search not action view. I think we're gonna view Constant. You look so that you you include search manager So his mandate weaken dip using convicts 16 services on banks knock so those managers can be none gone, you know, run all these things There are a few steps you can find here we have to follow. Oh, so putting them clear, I need to have a component name for some reason on component me is associated with the activity. Or I could find exit that way working with. So here I am, doing that on Ben Ghetto, searchable in for foot, manage. Without Rex actually in for my best thing, Prince gains that suitable thing that we created an excellent side and we need to step search you. So for initializing despite we have toe create search manager, then create a component name from the activity were wearing clean on. Then we had to create a searchable info on an initialize. Such will in for attention to the search. Socially next, Going to surgery, toxic on query x you should you. So the subject when we're not going to use Here's whenever the critics genius, I'm going to see 100 such new mixed link redundant forts. And here I'm gonna drug untrue because I have successfully inflated no menu this running. It's like looking okay, So let me find the other No. Okay, so you're following the problem here and after that said ships. We should be sending search your chips instead of the original list. I used to do this tag. No electronics. I'm in true. Look, Zac's battle that good. Are you nine birds for working fine before closing in closing. I want to say why he used on 16 and not on Hexham it. Well, because if use on deck summit, this will have to listen to closing off the list. This is Ah, really? I mean crazy. Because then they too many this nose here instead of back. And if you don't listen to it, then you just go back. But people were not close. So better to use on great texting. So whenever you click back is well credit exchanging and it is going toe render friend in such metal again and everything will be working. Okay, so possibly in the next video, we're going to see how do create ahead coziness list 8. Heterogeneous list: Hi guys. Welcome to lessen for off our small cities about reciting of use This time we're going toe talk about a true genius recycler view as a list grouping like having cat agrees and then sub categories in the recycling of you. When I was designing the scores, I considered both these things in one listen Mrs Lesson for But now I feel like it's going to be too big. So I'll try to just logically divide it like first Hatra genus list rules will go and then we'll continue it Maybe a different video finish it with grouping along with a true genius list reels. So if you don't remember a true genius exactly was something which has more than one type off item you so like in our case right now, we have one item you which is this item list ship. It represents a ship. So in heterogeneous recycle of you, I can have another view for representing a ship, but it looks different and then I can decide which one toe display it or times, or maybe a long good ships. I'm also displaying details about the captain captains in the same list so that will be a separate. Missed, really? In this example, What we are going to do is we're going to have a different I don't view for I just show you the model one. So we have this property for first appearance. It represents. When did tremendous ship was first introduced to us. So we'll be having a separate view for first appearance. So let's get to it. I think we need to change the brand first. That's why you go to view Louise. Dominant mitt status. I will say good. Clam it. He should be like, Oh, give it these common external finished Leslie three. So yes. No, I can check. Broke. Go listen for struck. Yeah. First thing we have to do is create a new new item. You so I'll just create a new layout file. It should be a relatively long and I'm going to name it. I can list Gluck name. So the first appearance is going to be a group. Cool. Okay, so give it a background. This color looks good with the least. So instead that you use the same color on acceptable story. Max Beijing will make it Clinton somebody. And now it is bigger than gaining extra. And let's just give it some, Ext. Andi, I've already created a style which works really good with this New York. So we just use it. It's going to Group X Day, and now you can with a 90 alcoholic. Bebe. Our group is really mixing. We need to goto the adapter and make some changes over there. So the question is, how would the recycling on after? No, which particular you do inflate. So, for example, here in our own credibly holders were inflating item list ship. No, we need to inflate item list. Group name. But how would we know which one to inflate when? So that is where this I end you type comes into picture. So based on the view type, we're going to inflate either item this ship off item list, group name, And if you see on in our own by envy holder, we don't have any item will type. We only have a position. And this means that our model off our list should also know what is the type that we need. We come to it a little later. Forcefully. So we have created that view in XML. Now we need to create a separate rewarded for the father group. So let's just quickly make that on. We're going to call it Group freeholder Stains. Exactly. You not hold us on. It's going to have a text room and may have a constructor to make be inflated here. So TV both name is a good Bengal bidi. And just like Schiphol, it's going to have a medical call on mine. We are going to say big. Yeah, so we have to your listener representing the to do Xmas views. Next thing is how to segregate the thing of yours. I mean OK, so we do have two different kind off views, but our model is not really you see, Let's just look at a modern ones. So it says it's a ship Condense name. Captain internal these things, but it doesn't tell what is it type. But if you don't even look at ship, what we get in shape and after this list here. Also, there is no information about the type off beautifully train fleet. Generally, when someone create a heterogeneous list, the designer mortal in such a way that there is a property which is really like you cape or something like that, Which is going to tell you what type that we wished that get on inside the list is. And then you inflate a particular view based on the type off model. We don't have that. So what we're going to do, we're going to consider this name if you see here the view tape it takes. And so let's say in our case we have to use we're going to have to states two types. So I represented with zeroing one, if we have reveals began, have three states. You can do it by in, um, but in and should I don't think kingdom would work here, but mostly you'll date three Indian monsoons and use those toe represented toe interviews. So what we'll do is we'll take the name off that particular ship and we'll see if it is even are if it is even number of characters. If numbers can it was this even We'll inflate item list ship, and if it does not, and we're going to inflate group name since we do not have the proper model for supporting ahead truthiness with a list. So we're using this And whenever you're using a heterogeneous list, you have to override one more method off free. I close We were adapters, which is called Get I don't view tape how it works us and gives you the position current position it was trying to inflate and using that position. Since your list off model knows what type off you it should it represents. So you can easily find the type off you using that model. It's really confusing if I just speak about it from the Just make this heterogeneous listen and we'll see how grouping happens where we have our actual model supporting intravenous list. So I say we're going ships, not get position. Rock name, no length more to Will it work? Oh, yes, I think so. If the length is even, it is going to go down. Zero. If the length is art, it's going to return one. Yeah, we change it. I get ready to do. Okay, so Well, I don't Your table is ready. Next thing is inflating the correctly out. So let's just say I don't do type is not in this scenario. Let's break her own clear with older. So I this I come you again on decides that Put nut and then I use a switch. Have you cape Chris zero. You have initialized right from you. Next. They're gonna hold this line. We're next. It so no basement, have you? Okay, they went toe. Great. Are should be holders. One catch here is that now you're not sure if we need to be done? Shit freeholder. Known because we have ah, group fueled resident. So we need to update a recycling view instead of ship adapter. I need to go recycling about few golden, which is the parent transformed book ship adapted and group shipping older and older. I know we have corroborated everywhere and stops working in on mine. Is that don't this? Yeah. So we will have passed it so in on buying beholder. First you need to check. What is it type? Best for? To check is using the Morgan. Can you get busy? So real tank is equitable, get probation and then regret a statement just like an on greatly looks cases eagle and we're going toe cast holder. So holder is goingto be cost. Video is worship. So ship, you hold it and one more bracket here on mine. Mylan to process Go ship, which is stuck. Desperation require pick in case of this one. Same thing, but okay, so shipping government views. And if President take shape market position in exist. What ship? Here. Think back. Okay, so this is a should work. No access rounded ones I can sleep cast. Uh, come on six. Oh, see, people cannot be cost to a group of order. So this is a mistake in straight off running 50 or live here. You're doing it years, so well done. New ship, the holder off they Can you no needle break? No. And no new group. One that also this particular lesson reviewers little like come true for me. I was I wanted to make it in a long one. Long series. I think of Petra genius and group grouping off the list as one lesson. But then at the end, I thought it better to divided into two parts shorts. Not ready. Prepared, I guess. Home, You don't give a default cases, so I'm just saying before full new on pain exception for the attorney? No. Okay, so this is what we want. It doesn't make sense at all, we have some items which are using a list of bills type one other I don't deter using list off to. And it is completely and amaze. We said in the name of the ship. And then if it is even a rock, that is what they what is deciding which we're doing? Inflate. But this is a very simple example off how to create a heterogeneous excuse in the legs. Next lesson, we're going toe. Use these as groups. So all though ships that were introducing the coast of the Black Bull which will come under these, they will not be expandable. But we'll just get the general headed by nothing like Okay, These all belong to one particular calibri. Eso. All ships that were in because of the Black Pearl will be under course of purple all under at building. Maybe combined together. Yeah, So this is it. Thank you, Base 9. Grouping items in a list: Hello, guys. Welcome toe. Part two Off lesson for In the previous video, we saw how to create a heterogeneous list for you and we got something like this. It's a messy form off lists, but there are two, like amuse here. So it's so had to genus Lis, and the idea is pretty simple, but you get really amazing results if you use them correctly. Like I remember, I created one list kind of thing where we heard tasks which were represented by these square blocks, and that was a list of tasks. And then we used to be added the date. So all the times for today they were grouped under one category and be used to Gina's list . Like what we did last time, along with what we're going through today, and the results were really phenomenal. So it's nice. It's nice to know our guest today. We are going to continue, as I told you in the last video how important it is to create your moderns correctly when you're trying to use her true genius list. Rules are grouping at Virginia's list rule as, ah, good old. So today we're going toe through this same what I can see like no is that I have two news oneness for representing a ship and oneness for representing a group. So there are two views that is to XML files. But we have only one morning that this ship so we can have two martyrs. However, the other modern will be really simple because it's just going tohave one string value called first appearance. And that's it. So generally, when you're craving Hatra genius list, you're not going to have just one item. So first step would be to normalize your modern into two parts. So one is a ship. One is a captain. If that is what you have in your head to Genesis. Here we have a ship and one first appearance, which is going to be a string. So let's just doing we're done with that step. So we have two models when this ship, when his group group has only one string ship, has all these things with grace a year second thing news. We cannot select right now in a normal recycle of you, Mia sending a list of ships what our doctor like over here we have a list of ships and get off intravenous list. Do recent two lists one for ship, one for group We can, but I think it's going to make things complicated. So what region really do is we create another model that is 1/3 model which is going toe contain these two models. So another mortal you. Let's say our roll Morton a less troll on list. Roy is going to contain ship on a group, but mind you, only one of them will be over a contended had ones. That means either it will contain group all it will contain ship. It cannot contain boat so that goaless is going to represent one list in your recycle of you. Let's just start boarding and then it will make more sense. So in the models have created a new class called fip Missed grow. Okay, So suppressed role is going toe. It's a rapper so immigrant into things minus it can contain a group name. Sure, look name. And then you can convene Chip. And also I need a way to figure out what kind of data this one particular Shipley stroke and games. Okay, so oh, I can just take foreigners like if group name is now, which means OK, it continues ship data and know it contains group. So I'm going to create another property called your paper, and it's going to be in Peter and we actually find going stains B S F. I probably started finally, and it was a role type ship is acquittal zero and no tape. Brooke the little one. Let's great constructors. That's bank stock, but it's only going toe. It was a group name, so I passed a group name. It gets in each case, and I will say hello type is equal. It'll rotate group big special invention of Let's listen because it's a little tricky. And once there is a lot to grasp, a big reason 2nd 1 is going to get a check. I just like the ship and then acceptable type is we will do little type ship. Okay, so now my model is ready. So this is the model that I'm going to send the ships adapter in. Stewed off. No starships. So, second, let's just some data shape productive. So we're done only modifications. We have to do Leslie and set off. I'm going to use ship list row And what should I call it? I call it a row. Okay, so I always knew. I realist let's just move ships and then we'll see what all we need to change. Okay. So firstly, and on mind, there's a change. Okay, let's start from your that I don't take only we were using this. Even an old strategy. No, we can do something like a doll. The law does not get position. Brooke, your type present with OK, so Oh, I don't think it's important. Really. Find them is private with amazing public. What if it is not public? We have to be fine. Get is in second, so begin defined road I breast finals. So not, I think are not the item. Count is also different. So shakes window for hours. Now if you observe the number off items present in Earth list had increased soul Maybe earlier they were the night ends and never told before groups. Now we'll have four game growth and debris. Okay, I sing, including nal. It's a better on clear in on create instead of zero in one. Let's excuse of your ex. So for the little ape Shipman, great ship growth then infect Group and in on bein he have a few changes. Firstly, instead of ship, I will get a shapeless True. I just call it a zero. Those you type She is true dark ship and I'm going to say a dark ship for days Book no one could see. No, not group. Uh, yeah. What ends? Okay, so said ships was a metal. No, we're going to have sex roles. Same thing. Oh, this is not true. It's not clear. It's sort through sort at all control. I know the high density on. We've been just room off. This meant that all became this that we have to do in active. So we just converted are called school, understand ships and now they were conscious placed role in me and activity. We have a couple of changes. Find value of why we have to be careful here when it was simply ships it was playing, but no getting ships. And we need to transform our list of ships into this stuff shift ship list rose and oh, so that is what we need to handle. So let's just create a simple method which is going toe take a list of ships and it is going to return me our list off ship list rose. It's created metal first. So probably screen drew down on me, uh, ship Mistral. It draws from hips. I like stuff. Ships. So, firstly, right now, I don't know how many groups are good. I have no idea what they're. I just know that they're present in first appearance on also, I know that they're not duplicate. They can be too big it. So maybe there are 10 ships, and all of them 10 will appear appear in different movies. Or maybe there are five and all the ships were there in one movie, and the other one's not that many ships, so I'll create a sick. But if anyone who doesn't know sick it's part of the political bias part of collection on, it has a very unique property that it would not consider duplicate. So if I try to insert Apple two times intercept, it is only going to save it once so I can get all distinct items from a list using set. So they're going to you set set for saving list off groups because I have, uh, set for group names. Let's just create a list. Forgetting all the ships. Yeah, Let's just create one for ship. Rode this one container finally sores. So in euros A request new. A realist. Okay. Yeah. Firstly, I'm going toe pick out all the group names, so I'm going to run a loop for all in shapes. Simply group names. Look on park first appearance. So now I have a list off all groupings. Let's add these groups in do noodles. And so far group name in group names, New York stock and group name. Okay from new ship list through off book name and four. Now, I'm just going to copy on the ships. So ship in ships, New roast, ag, you should play strong ship. Okay? Yeah, well, if anyone is wondering, like, why I didn't copy the ship as well in the first statement here, but that is because I wanted on the group names to be on the top off ship mist rose and then followed by ship. That is because I'm going toe sort it. No, in the next step. And it's easier that way. Eso It's just sort of quickie as a collections. Look, Sock, I mean shark newly strolls. And this is really really That's Comparator. Tow ship one, bro. I can one who I think by the governor already trained. It's one. So what is happening here is that I'm going toe, take the first appearance. Keep asking. So if it is a group type, I take the group name. If it is a ship type, I'm going to take the ship name and then I'm going toe short and based on that, so I'll get since all my group names are on the top of the list, they will stay under and other items will just follow along and stack under it. See, one is equal grew This one knock your paper is group. If it is a group, then forgetting group him. I have to do this one got cooking if you want. And after that. So in the shipwreck for extra periods. Okay, So the same thing I have to repeat for the second ship year I'm going to sit in their school. It is s two. Now I have first names for both my entities that are going to be compared. Next I'm going toe return stream Lord case in tentative orders not compare. You took on my feet. Finally, I'm going to return Muto's. So this is as I explained, it is going to compare grid for straws, first appearances and since all my group name there on top. So they will not really move if you can find any better way off sorting, which is not this complicated, and I would really appreciate it. Okay, so no, I have shitless troops. I mean, if I call this matter, I'm get it. So let's just make all the required changes. So, firstly, I don't need other starships. I need I list off yours. I remove it so well said a blister is going to change. That's this. See? Still, I'm going to get a list of ships from later you came. So I just make a local with here before, and then my Global Fools list will be of great refusing that Maxim recreated drill its warships and I lost the ship. So now I have a list of phone rules and after it doesn't take set ship, no takes said rules and again pass your stood it. And Okay, so here is a problem in handle such again no Said chips. So what should be changed here in handle search? Okay, so I'm creating a new realist off six. Okay, there's room. Have protein, anything year. Let me just verify it. Eso in search? I have to. Firstly, there is no ships, so I have toe certain rules and those is not going to contain a ship. Everything. So I have to add ah, condition here. Which is if if we don't really there were old. Dark little cape is equal. Do ship my bullshit on and is associated with narc ship. Then you can add Oh, not ship inclusive shipped list. Also again, this particular filtering is going to give me a list of ship. So I have good byes. Redrew Rose from the ship hardship. And then I passed that thing to get up there and I think I broke it Done. Just turning. Okay, so this is what we got. So as you can see in at world's end, many ships were introduced because of that Brethren make or something. I don't remember. The plot on then course of black polar interceptor and black bull was introduced, So it looks good. Not very good, but since we had we didn't use any external libraries or anything like that. And then you can design these group news as you want making bread journal. So it works on def. You see, these Oh, group names have started in the creasing order. So peace first, then did an old Andy than a Yeah, So this is it. And Oh, let me just show you some other variations to a true genius list. You mean first when this illness get exactly So here's one ripple. Oh, uh, it's going sticking headers. So if you see, these are headers like we have group names and I just growing it just sticks to your head. It seems some other example off it. Yeah, I only used it once, and I was not really happy, really, because it was too much off court, which I didn't understand, and I appreciate them for creating such a thing. But I don't like very complicated libraries, which so ask a sticky recycle you You can try sometimes like when you have reversed with all these basics about recycling descript new lamps using all these libraries are just called through the court. True, expandable recycling results so interesting, and they're really having the used. So let's see. Yeah. So as you can see here, the categories can be expanded or collapsed. Very interesting. Me Use this for one of our projects in my previous company and one of the Talon News. Refuse shores. As you can see, when I clicked on section zero in the nightly construction one section zero stays open. Look, we were supposed to, like, close other sections. When, like so zero is open. You clip on one, you have to close zero. So we had to modify this librarian took us a while to understand. Okay? What exactly it is we have to do. And even after that, there was some scenarios Were Onley sections when clothes are particular section will not go with Richard open. So, you know, it's like to read sword, but definitely go through it. Tried in your projects. Expandable recycle looks really nice. Especially when you have a lot of data. Yeah, So this is about grouping off items and Catalina's lists in the lex next media. I think we're going to see great nailed and how to switch between Western Good dynamically . All right. Thank you guys. 10. Toggle layout between list to grid: Hello, guys will come to listen five off our series. In this lesson, we are going to talk about Gridley out how to set about great love and also how to dynamically double between list and great load. So this lesson is going to be a little different. I'm going to take you through the whole process so I don't have any as it's already created for you guys. What have you been? Just start. I jump into it. So we're going to create all those assets that we need and then maybe so this lesson can be a little young, but it will be nice. I mean, I have personally, like, got a part in some ready trivial bugs are Maybe I'm not able to find some setting are the project is not set up the way the instructor spread ago set up. So it's good to have a least one lesson where we go from, start to finish on how it is developed. So let's just jump right. Good First, as usual, being just trickled through the latest front out of looking, I come in. Okay, so we're already there's a sale on it and see what is there any fill state? One thing I want where this that this lesson is not does not start there. We ended the last lesson. So last listen was true Genius list. But this one is starting from searching a list, as you can see here, because getting this behavior off meeting between these two grade using grouping it's not very ideal here because her I don't use off Heterogeneous lists were of different sizes and groups were not become really good and the final very close on. Okay, that could I think I did create a branch where we have group along with robbing between these two. Great, but the final lap looks better if we don't keep Brooks this whole, it's just started this first, leaving it to create a layout that will be inflated when we are in good more. So right now, we only have this item list ship. So we have integrated item grid ship as well, and then all, it'll be a great top tater menu. So each menu soaking had another item that will be used for talking with meaningless too good. So we need some asset. Firstly, we need awakened to represent list more argued mood. So I go toe up new. That's it on. And here you'll get a bunch off because it had been choose from. So there is one called Dashboard. I think it really represents a great actually small, suitable for other list, but a good would all go a crane. It's going to be like the industry naming it provides, I think, the color soon and also I need when morass it for a list. So I just first for a list here. The second looks good, but I'm using the cycle in my find a bra dust filled. Just ST Louis. I think this is added recently this not refuse this one. Okay, so I'll rename it to make that's what they are saved in my driver folder. You can see them in really the black and colors just make it white. So this fill color property. Besides, what is the color? Had quote phlebitis success? So 123456 temping for password. Okay, so we have to assets now. This is a greater menu. I think I just dug. I needed paper. So which will be the table sickly selling UNIX hardcore ticks away this court 20 this bulb and then extract the string. It will be saved in strings are excellent. So I gave it a 90 boo action switch and show his action intermediates room. Andi, I could clearly before, like enough this national, because initially, our list is going to be It's going to be a listing on crude. So anything I want to show switch to good. That's why we have the sight of you. So this is done. Next step is to create a separately Ope for 100. For that again, we need to Was it if you're seeing your BG peller circle? So this was your sword representing the profile pic ingredient. We are not going to have a nickel file pick, but still, to get some dynamic behaviour out off our final product, we're going to have, like, a background which is going to contain random colors. Busan every step show I just create a new driver. Gold. Well, maybe solid direct done. You so great is on reserve circulating, so it will be like like a informant. Okay, so I think this is one career share and shames with me. It will be acting so What pencils there? Well, today, with the size and stroke, let's just skip stroke, include? Yeah, explain And until Oh, they have a boat So blue. What is there? Oh, much of it. I'm not using it. So I'm going to create a white boat. You should be there in the background because blank red color or any colors on mental Gautreau I call produce. I'm going to go get a new driver. The driver. I see directions Book? No. Like before BB a priest, everything. And I came to color toe. Right? So it's already next thing is to create the layout. So I go toe klik. And as you know, we're not a big fan of constraint, Leo. Trial changed too. Are you? I call it title. Great ship. Okay. Oh, looking. But modern secular views Warrantless and Saif hand if you're wondering how come this nice, useful navigation thing comes So there's an extension in Qom called Audrey Jeff. Definitely take it out. So it's really easy to navigate through projects on get a lot of big bucket. So here's the file. If this is how our great list looks like one thing toe mention is, has kept the ideas seem so I ve ship image our TV ship name so on the ideas as them and alterna but off lose which are going to me included on on our producing. That is because if they're not seem, then we'll have to insert conditions in our adapter toe manage grid endless separately, which is fine, but let's keep things in bull on that. So I have kept it like this. So I've used ready. Next step is to update the adapter. So we have to tell the adapter, What is the orientation off our list off? What is layout that we're working on? You must have seen some abs there. If you are in portrayed moored, the list looks different when you switch the load and urine landscape more. The list looks different. That isn't the items are different, and what we do is we take through different layout and they have the same name, but they exist on two different four lives. So the portrait one is in layout and the landscape one is going to be in the out hyphen and then before landscape and inside that you would be based in the other one and the ecosystem on its own. It determines which one to inflate if based on urination. A pretty place the I don't want to do that because you want a talkie button. So that is the reason we have to tell a doctor what is the obviously every need to inflate . And for that, we're going to introduce a new variable. And you're going to call it private final Julian in gridlock. So if it was screwed, then you're in. Good. Look, it's not We're not in the final minute to initialize it for the constructor. Yeah, right. Andan on. Can you hold on? We're going toe. I take the valley off angrily out and reason that we're going toe inflate. Either list. Chipper grujic pie. Countless people. I don't get you. I'm going to store the idea off Really out here. If in Gridley Old are not Leo, but I couldn't reach it. Eggs are working real, but I can this ship and I'll make it, you know, Haley. So is it any other change? I don't think so, because our we want is going to 100 both the views correctly, because the world represent worship and there's no more information or less information in them. There waas this information, for example, In our item list, we have the profile pic off, maybe the ship, but in our great well, we don't have. So in that case, we might just add a few checks here if it is in great mood and would inflict that particular view. But we're giving the example and everything. It just copies exactly. Next thing I do is modem me and activity, and we have toe do a couple of things here. Firstly, will notice that there's an editor which says that after cannot many slaves because you're not sending any bullion. Okay, so let's define a 1000000001st. So I went boom in good more. You see, it will not be Ingrid Notary put less falls say in good works. That's what editors going. But it's just what I'm implants. Too many others. Oh, nice. A skein. It maybe it will be done. No. Okay, I just fixed this pillar and get, but Okay, so this is the error of light borders on good not getting Mars with all the other resources . So maybe we can't refer. Toe resource is so that's just give it like like this. Oh, good, you six. Yeah, Now we'll run it. The list is working fine, and we have a button button. There's nothing. So we'll just add some court would firstly, if you notice in a adapter in Gridley out this final, which means ones needed after it's created, we cannot say set bigly old true affords because we have said it finder. And there's a reason for that Once on the second new center, there is no sane way off making sure that on create a hold of this called again. And what we need is that one can behold. It should be called again when we get the double button, because they're only via deciding which I don't butto inflate. We have a condition that if you want to change the load, you have to create a new adapter and for the same reason in the mean activity ambient. Remove this line new ship and after it's just going to be a variable. And where should I create pineapples? Let Snowden set up NIST here. I'll go on after is equipped with you. Super good in great mood. No, it's handled the kick off only button way have on credit Sum's. I think we don't have. So I'll just override on option that one. Selective. I'm in a statement. We'll check if I am not. I is action to clear out it is. Then we're going even more so. This lane, it's going to just It was. If it is true, it would make it falls in. This was if we make it through and then I'm going to call set up list this beast. Two lines are going to make sure not. Our list is going is recreated with necessary parameters for that change. After this, we have toe abate the Aiken in the country. Probably menu weaken. So angles. I am not sick. Aiken, Secret is in Good morning, then. Use on driver. Look, I see list. Oh, yeah, this is a lie. There's a new one that we have using this this place on the second witness now would. So if it is in good more, that means we're currently in good mood And what we can be Yes, list. So we're going to inflate the list, Aiken. And if you're not in great board, that means we can come in good mood if it like your That's why it is an ends case. Okay, so we have said because Bacon's on men, Is it true and really for peace? Green cardigan? Super. We're going to call Trooper, I guess. Yeah. Toe super. Not on action. Items selected for existed. We accepting the Lukman generously. Nearly road manager. Oh, this is a problem. Because for good would we need group left? Man, I'm just commending this line. Fighting decoration. This line grows vertical. I was underlined between items or nothing else. So I'm just going to escape it for No, he had a green. Does it give in good mood? Are we pirate? Let's not settle our manager mule Gridley, manager and provides the context, which is a column count too. It is. Okay, so looks like Rihanna. Let's run hood. Okay. So lines are going because no defined right from the creator, and I click here. Yeah, we're getting a great but doesn't look really fancy. We have no spacing vertically and everything is left aligned for some reason. So it is a problem. Oh, yeah, sure. We need to fix that. And so this problem is because on the space that this left after displaying our taken our abuse in Gridley out the space is not getting distributed evenly. And that doesn't before behavior off. When you use Krylya heart of exactly so, fixing it is not very difficult. You have to create your own decorator, which is going to divide this place as evenly as it can. That's just Google it and seal, I wanted to say so these Eichler view he's make Oh yeah, so they have. As I said, we have drinks and item decoration and then give your own spacing. Everyone is getting some references. So here is the one and yes, you can see that is much better than what we have right on this one. Uh, seem I have done I went through all these links on my phone one way off creating this spacing item decoration, which works perfectly for 100 years. For that, let's just goto the same beef. It was less than five. And so this is the gas grips pacing item decoration. Let's just copy it and then I'll tell you what is happening inside. So I've creating created a package called Common and insane common, um, defining the scale so and just do the same. Oh, back it harmony. And then with the class, there are three things span conch spacing and include edge. Feingold is number of columns spacing your Thomas pacing. You want to give around on on your problems and then include edge is something which I'm not sure you can decided to prove or fourth. And then you get you know, you couldn't be able and you can choose between works perfectly. And then this is a member that when you do it like item off sit on this carpet and restaurant rule. What is happening? Uh, yeah, everything important. So, firstly, I'm getting the adapter position. Were there not Chris, currently, place on within the position and I'm finding if it is good column. Is it so more expand? Congress going to like for First column zero second like that. And then what? We're doing this. We're taking this pacing and we're subtracting column number multiplied by spacing on dividing it by number of columns, Some mathematics going on. I'm not really sure what is happening. If you are two days again, go through it. I didn't go to it once and I do that this time, but I think it forward well on that. So I we have created a spacing item. Decorated decoration lets us put it. No, we have an item decoration for Lena List. And we have an item decoration for I really out. So we have to item licorice picketers so we can use the same statement like this school. And I think we can set it up in the same statement. This is for Grid Ridley out and say I'll at least work. So I community created We're going. You good spacing like them recreation. And we have to pass a span control unit. Two columns. Isn't I 25 fault and see And for the New York I'm going to see I ask obviously, let's run it onto its loading the data every time that we switch, which is not really good. One thing is that I'm getting both lying as well as placing, which is not very ruled and spacing. I'm not really happy with spacing. Let's make included as true. So where is it? Yeah, Yeah. So spacing is better. They look nice neatly and you're going to do columns, but I'm again getting divider as well. Clearly off on leaner failed one. And if you see there No, I mean coming is exactly for some reason. And also this space is given in getting in trees. And this is oh, getting reduced. Some something is happening. And third problem is that it's taking too long to load every time. So reason being every time we are making next a corn are mobbed. Medical call whenever retained, sealed. This should not be the case. We make the nickel cold ones and then we just sit still out. So let's external for college of was because it's anoint the extent. Let's see what is happening in set up this. Okay, so when we want to set up the list, we have a handler which set the ship's toe the adaptive weekend. What we can do is we can take the metal called gold and weaken. Drink a separate matter. So I'm excited. Private Boyd, get data and copy this park. Put it. Here s oh, this thing will were to call it so I can call it from the constructor once the list is ready. But this is this is how it was earlier because that cold and moved into a separate location . Andi in set up list. What is it? Yeah, after setting up the end up, like in this too artery. I have a look said ship ships. So for several 100 gypsies and be so nothing will be straight. But I get a call is already running. So once we had all the ships, it's going toe. I'm date, uh, Mr Ships from you. So let's just what I need. So first time on the day place loaded So now there is not getting note, but we see the same problem. It's moving towards the right. We'll see how to fix all these problems. Okay, so let's first tackle the problem with the dividers. Decorator. So what's happening is that every day, then me keep the toggle button, the set up list metal this called and what it is doing is if it is greatly on, if it isn't great more, we are adding that great spacing item recreated decoration isil. If extending me click it, it goes to the end spark, and it is adding no divider item record, so bored the names it is adding a different acquitted and we're not renewing it anywhere. So that is why, because Annapolis getting remade every time. However, this is not getting greenish mist, and we should not even do that. What we need to do is we need to. We moved these item decorators before setting up a new one. It's easy removing decorators. So I said I was really proud of Prince Park. Remove Aiken decoration and I need to price item decoration or one problem. We're not saving instances of these decorations. Two legs First, save these equations. There are two ways or when? This weekend. Just remove the this call and initialize it here. Our since we're using it every time, that's greater global were able offer. So I'll go to the top. I had recycling you. Don't Aiken Regulation list. Do you know making the creation And there well experiencing declaration. Okay, we initialize have been on creep when you close it here. So let's divide like Liberator is go quicker. I need a second next on the organization. Good it for us and gone spacing. And before I forget about prettify works Mexico in cyclist firstly and remove with the decorators. If you notice in removing recreation. I mean, you say off it. If under decorated does not exist, it is not going to pull any error or anything like natural. That is the reason we can just call for removal off bowler creators here. No, I just sent you. No, it's I made No. Okay, so yeah, looks fine. Too many pink colors. Um, and we look really good. I think I feel it's looking really need. And if your design is need, men looks really nice. Maybe you would want to remove the school bus when it's 100 more, but that's up to you. That's fine. Okay. I saw this was already long to do it. Next time you're going to fix a problem, which is when I switch with list. A good. It's a very abrupt. So it's so we're going to add a nice finish Animation. When you're switching, struggling the layout. Can you 11. animating layout transitions: All right. So when you come to listen six off our series. Andi, in this Listen, we're going to add some animations, toe how I consider getting populated in the list. It's going to be a little at a small lesson than our previous ones to Let's just start with it. I'm just quickly thanks to Bennett brunch life it is. Okay, so lets us cr ap warns. Okay, So what we want is that this change between this took should not be this abrupt. And so we're going to animate this part first. Oh, step is stool. Did he it these animations. So what we're intending is that the list looks like it's falling down like, ah, for loan animation should be here. So that is what we're going to create. Okay, so first we need to during that animation. Oh, let's go. I come animation. Well, no. Okay, so I fall down. An emission is going to be a set off. Read it. Kind off changes cool of you. So what we want is that nets considered the second Adam? No, this one. What we want is it should start strong little above. Then it's common position. Okay, so the animation should start When this I don't It I mean, when we're going to inflate this item, we want to Cristante strong, busy, other and then it should fall down. So what do you want this for? Sleeping toe? Either translate property that will go from a little above. It certainly wasn't. And we'll hear. And this animation will run for a specific time. Uh, it will be 204 100 milliseconds to It's just behind a beautician. First 100 in Caesar's medium. This is 400. You want to be what can state property we wanted to transit from and by Axis train. People think about Dan. It's friendly position and cool its final position. And there are some There is something going in the political which decide how they're going to come down. So if there are things like bounds, so when it comes back, we'll agree. Agree? It is going to look like bouncing something like that. So there are many that safe back here is use. It actually would be excellent. Good. Yeah, So throughout the animation, it's going to start from 20%. It will go 20% back, and from there the animation with start. And so it will go come back to its car inquisition, which is zero person and all this will happen in 400 million seconds. This will not make your I obligation. Our animation look really very area. So you're gonna drag something more, Angus? And besides, how can state endures? Oh, you're gonna be so he said. When does that start? With corporations feeling from Alfa zero and then Goto one which means make it visible. And our team in the volatile revenues probably animation. It's going to be totally invisible. And by the diamond it reaches its current position. It's going to be totally visible along with Alfa. We're also going to scale it. What we want is we wanted to be no, a little bigger than a tradition stays. 05% is what we want. So it will be like if it is 100 pigs in high. In actuality, he wanted to be 105 picks is and then through the animations because I'm going to become 100 from X. Aside from the 10.5% scaling, same thing from by do well X make it 100% nutrition size. Well, why make it 100 person? And then the interval it So it gets copied. Yeah, So our animation is really and we can use this animation toe and he made things like buttons are some edit text extreme anything. Ha liver. This cannot be used with recycling because they recycle abuse would like a choreographed thing between political views. So because that we have the creep in later activation using this item animation. So oh, look, animation. No, I'm It's very simple. There's a pack only order animation. We have to pass it. And then off animation. So is the animation and a couple of more properties. And they're like, What is it really? Between all guile animation for anything it's 15 bushing on. Then animation order can be reversed Kind of. Oh, so I'm just going to be pretty normal and sick. So we have our animation. Really? Now we're going toe on it, too. Our recycling I come to set up list. Andi, I think before setting the least are Yeah, so to be of suitable list, you're going to add this lame Leo Kanye, Mission controllers animation you print start lordly of animation Prince convicts with plastic I d. And then we say Exactly you Brexit look ammunition, 60 clinic or nothing happening in the first time. And after that, it is working for I didn't did run for the first time. Could be because oh, it wasn't bleeding said because set ships is getting called from get they tied their pain. So let's just create a separate method for it, and we'll call it from both places and company. So lines and I called him a turd. All right, Boyd, get out. I mean, listen, is the ruling We call it from here and Oh, yeah, yeah. See what happened? Okay, so we're getting the desire animation, But if you notice the animation is not working that well with our Gridley out, I mean, it's stacking these list one at the time. I mean, it's not considering that this is a great loud and we have columns. It takes when I don't from first column, the animation finishes in that item, and then it goes to the next item off the same column. If they can all stack at the same time, that would be really nice. So what we're going to do is we're going to define another animation for Gridley. So in general, things are falling down in a graveyard. Are going to make it like going. It's coming from bottom. It's getting stacked up like that. So for that, create another animation. We'll call it. I come in the nation, move. Okay, so here, for exceeding the defining duration. And And we wanted to translate and either said, Well, we wanted to translate from Morton. So this time, from why is going to be positive. So we wanted to come from 50% like anymore and it's going to compete. Original position. Just all zero person on the interval it is you need to and so android I'm in. Okay, something is wrong. There is no s include and we have another little and Greg from burrito. 01 And then you will dry out with other in trouble. It's really little maybe how different they are and not it's great the way out. So look ammunition more very similar court. So I just copy that and I'll updated. So it changed the animation Animation prides already here. We need to attend a few things based on if it is in good mood. We need toe inflate that on emotion. If Ingrid Mood you are on, uh, move. And, um, no isn't great. More is using the bull of animation and using the phone time you're running. I think it's looking much murder. Not as bad as it was looking. Yeah, such We knew. Check. Search order. Okay, everything is looking Crane. Um, yeah. So that's pretty much it for this lesson in the next. And I think the last lesson in the series we're just going to polish, injecting and add click mechanism to work on a first. For that, we receive a click, and then we just open a dialogue, smiled lock. 12. Polishing the app: Hello. Nice. Oh, so we'll come to listen. Seven, enough small series about recycle abuse. So this is going to be the last lesson in our series, and it's going to be a short one. Solar system played through it first, leaving it to change the drank and coming andan that cold start vessel in this. Listen, we are going toe. I had a quick listener so that and use it kicks on writing, but we get a notification gonna be It's just stranded once, and we'll see how it looks. Okay, so this is a lamp. So you can see this ripple if it But nothing happened. So Gannett registering or listening to the kinks. So we've just added now, So there are, I think I've seen three ways of doing it. All the ways required you to add a non click listener to off the ways River. I'm in contradiction. So out of the three ways, one is the recommended way, which we are going to do. Other toe one. I don't remember clearly what it was like. You take the view and you add use it and property. So I assure you I think every view has this back Probably like sick bag. It takes an object. Sel. What was happening is that whenever use it clicks. We were setting the model as ag for that and was sending that back toe. Whoever requested I mean Hawass, listen to the call was complicated But it was something new from user and the code ways using something called as recyclers item patch listener or something So it registers that is, that happened in recycle of you and the extended Any modified to looking. And this way, just like we are added de nearly out manager or item decoration will also and I don't touch listeners and it will tell us which exact item was killed. There are some downsides to it. If you want to register clicks happening at different items in your child, I don't you Then you can do that. It will only tell you what item in the recycler we was clicked. So, for example, may be in the Facebook news feel you have, like, button comment but its share But, um so that we could not resist her like shirt come in separately. So become to the last do which is the recommended one So we having to use scene for that will go toe ship a doctor and will create an interface. And we'll call it Click Callbacks, and it's going to have a medical on a ship Click. So we have a interface. Andi here. Anyone who is creating an instance off shift adapter should also implement this ship Clint call back and should send its implementation for the I'm Dr so that we can use that implementation object that objects toe send like signals when users click. So we'll have modified the constructor. Really? Just add ship click call back on we would create here is really so my big Sheikh back quarterback second thing. Okay, so now we need to make some changes to your holder. Now, in this particular scenario, what we want is we want to have our click going to listen to clicks that happened on the whole view. Not on maybe this profile picture or something else, the whole view and the whole who is represented by this item. So we're going to send that little is known to item you. But before that, we need to implement unclipped listening. Yeah, we did. You were able on click methods. Oh, no. I give you toxic on sleeplessness. This? Yeah. Now it has been registered in on click. We need toe used the m call back and returned. What ship was clicked so we can get the click ship? I don't remember back. Well, when I created this glasses static, I don't You guys that whenever you're defining an image, us try to make ecstatic because that seems us from memory leaks, and that is true. However, I did read somewhere that in case off holders, we can just skip making it static because, ah, view holder is only going to exist when the it's out of class exists or it's never going to heaven independent. I mean, we don't really require toe exist independently. Aside from its outlook, Lassiter that after So here we can skip static. I'll just try to find that article. So I just had this link in the north section so you can go through it and it tends you like in case off your shoulders. We can skip the making ecstatic and why I am now pressing down on having it as non started because we need access to these variables like the global ship list. Forgetting exactly which ship at the most clicked and also that I'm called back. If you don't do that, we'll have to pass the starships Onda. We can avoid sending the worship object with every beholder. But we definitely have to send them called back every beholder instance. So that is too much work. So let's just create a fuel that has non static Sundays. We understand quickly work from here and here. My dick a big ship, four ships not good. And at present with my product called that I have a position which points toe is excreting position and then we'll get a sharp object And then I can say I'm called back on ship click . Okay, so these are all the changes in reproductive. Next thing is to the main activity and computer because they're not sending the ship. Did callbacks and exist implemented quickly? I mean, over in the Mecca. No, let's go right here. And, uh, and this log something here and no, in my editor, my neck Mnisi this it's just run it. So yeah, something getting the call back and like covers are true real, but Aram does nothing. You can click on things, but apart from that, nothing in that. So I have created this class. This Dino called. She retains dialogue and there's nothing fancy going on here. I just initialize it and I open it and we can see all the details about the ship. So let's just open this dialogue from the callback that we're receiving. Eight year I removed the long I say, Oh, she'll be built my log because long is a conclusion, bigger style of the new instance. And I possible ship Good. And then I would say the things I know talk show you have passed the fragment manager, which is gets a book, someone manure in some bag. So my no and be anything, they're not going to use it. Use a fractal dimension between that ox. Okay, so I don't know. So we get some information about the ship and then you can go back. Same thing happens years just in the closure. I mean, damn should not look empty or does nothing half meat. So I added, This dialogue can go through the coal on how we get to the dialogue, but there's nothing more to it. and it does not going to look at the recycle used to like hard. Why should I bother explaining what is happening here? You can go through how it is working and everything. Okay, so this ends our lessons on recycle of you relived miss out on certain things like the animating items. So, for example, if I click on Empress and maybe that explains First South thing goes towards the right and all those things, those translations was killed because I freely since it is our first lesson, we need toe. I need to understand, like, better. I'm going too fast or I'm going to slow. But you're able to understand what I'm saying. So what I created is not very advanced so that everyone can follow. But I would really like to get something back on things that I can improve or we can improve on the project are on what? How I'm explaining. Or maybe my I mean, my set up. I'm sure I can do better with the regions that I'm creating. But anything that you think can be improved. Yes, I think we do. Tell me. Oh, okay. So in the next video, we're going toe discourse aboard the final project. So I've changed a very small basic template, and I would like you to go through it and try to create something very simple out off it. It's very similar. Toe the fire itself, but little more. It has more data. Do it and you can play around with and be fine. All right, guys, she's in the next video. 13. Final project: Hello, guys. In this small we do, we're going to discuss about the final project. It's again created as a separate brunch. So you do get brand high from all Oh, why things Okay, you'll see this brunch final project started. So let's see what is there in the front. It's Ah, yeah, it's pretty similar to what we had in Lesson one start. Only thing is, instead of pirates, they don't we have something like contact. It's like a collection off contacts. Its conduct is going to have a name, so name gender, region age. I don't phone number, but they're so and then there is something all this credit card. So some credit card in for all Fagin for. And then you also have a photo. You are eso instead of this chewing that blank container with random colors. Now you can use image processing library like glide and then inflate an actual image in that area. It's very similar toe how we arranged the pirates for dollars. So there is a data you Gilles class and you have a method called get all contacts. If you call that method, you get a list off all contacts. I added a small sample Indian activity. So I'm getting a list ofall contact. You can use glide. It's very easy to use and just have gone through seven lessons and just pick all the your favorite. So if you like grouping off list so you create is more lap where your focus on grouping off list or maybe credit card and force pretty I mean different. So you can have that as the center ornament off here happened. Make something around it. We also have using them and possible year for some reason. So you can get something like a key store saving uses private information s credit card and then saving possible something like that cradle simple log in and then the recycler room. I would like you to have recycling you somewhere in Europe because we did course from recycling the right and even I have done one similar up using the same data exit. I just show you that up. I live in the link, do this app in the north section. I created it for one glogg about creating simple abusing and will be our director, but and didn't go that well. I mean, so I ended up with an app which looks fine. I guess this is the up, Mr Contacts and get many pictures. Nice pictures. You're getting it from on special and Mr Off uses. See, I have that option change from this to grade search and everything is there, just like we did. So this is what I created you. I'm sure you have betrayed AEA's more better your way. Things. It looks much need so you can try anything that you want and you can share your project book and we'll discuss, and we'll see where we can improve in those present. So you get the idea. This product I like dealing. It's called contacts up and repeat. It's in Maribel. And if you get stuck somewhere using glide or maybe something else, you can refer to this project and determine state. And I would really like to see your APS, even if it is very simple. A t least. You know that. Okay, I can create an abusing all these new concepts. A loan so tried out and thank you guys on the best for your future and livers. See you in next video next series. But