UIImage can be sent from one controller to another in the following 2 ways
First Method:(Where in secondViewController we define UIImage *image2; )
secondViewController.image2=firstController.imageView.image ;
Second Method (Where in secondViewController we define NSData *recievedData):
NSData *data= UIImageJPEGRepresentation(imageView.image,0.5);
secondViewController.recievedData=data;
My doubt is which is the most efficient way of sending the image with less memory consumed ?
Send the UIImage directly. Encoding it as jpeg and then decoding it again is a waste of cpu cycles and memory.