👻 Sample AppMap your objects from MBurger objects We are going to create an array of Home objects from the sections returned by the api.
The home objects will be like this:
iOS Android
Copy class Home : NSObject {
@ objc var title : URL ?
@ objc var homeDescription : String ?
@ objc var images : [MBImage] ?
}
Let’s add a mapping dictionary in Home like this, so that the section can map its elements to the Home object properties.
Copy static func mappingDictionary() -> [String : String] {
return [“title” : “title” ,
“description” : “homeDescription” ,
“images” : “images”]
}
Now we have to create the array of homes from the MBSections
. To do so, let’s add the following in the success block:
Copy self . homes = sections . map ({ section -> Home in
let home = Home()
section . mapElements (to : home , withMapping : Home . mappingDictionary ())
return home
}
Now in the homes array we will have Homes objects created from the sections.
We should do the same thing in the News and Gallery viewcontrollers , using different object models and a different mapping dictionary.
Copy public class Home implements Serializable {
private String title , description;
private MBImages images;
public String getTitle () {
return title;
}
public void setTitle ( String title) {
this . title = title;
}
public MBImages getImages () {
return images;
}
public void setImages ( MBImages images) {
this . images = images;
}
public String getDescription () {
return description;
}
public void setDescription ( String description) {
this . description = description;
}
}
We use the MBImages
class, which is a representation of images inside a section for convenience.
Now we need to map our MBSection
objects to Home
objects:
Copy public Home mapHome( MBSection section) {
MBFieldsMapping fieldsMapping = new MBFieldsMapping() ;
fieldsMapping . putMap (“title” , “title”);
fieldsMapping . putMap (“images” , “image”);
fieldsMapping . putMap (“description” , “description”);
Home h = (Home) MBurgerMapper . mapToCustomObject (section , fieldsMapping , new Home() , false );
return h;
}
Once we have an array of homes, we can show them creating our own custom UI using the Android SDK. We can then do the same procedure for the gallery and news screens.