0

When i started working on my game app i didn't know i should create retina/non-retina @2x, @3x, @1x images. I just created the images with no @1x, @2x, @3x at the end of png file. So since my images are currently called image.png, it's considered a non-retina image i know now. Example is I made an image 25x35 in png. In Storyboards i decided to resize the image and i made it 35x40 because it looks better for iPhone5 than 25x35. My issue is even for 1x i'd have to re-create 40 images from scratch for @3x first and then use Prepo app to automatically downsize to @2x @1x scales. I tested my non-retina images on iPhone 4s/5/5s/6/6+ simulators and iPad 2, Air, Retina simulators and they all look the same and great, and app works well. No blurs or issues. Can I just use my image.png for Retina device as well? Would Apple allow this?

  • As far as Apple approval is concerned, I don't find any issue with the approach you are using. – Anon Dec 12 '14 at 18:52
  • What do you mean? Would Apple allow this or not? Or would my app get rejected because i have non-retina images for retina device apps? –  Dec 12 '14 at 18:59
  • No. I wouldn't. Though I cannot be sure. I suggest you to follow the HIG provided by Apple. – Anon Dec 12 '14 at 19:00

2 Answers2

0

If this is an in-app image, and not the application icon, then yes, you can just use Any resolution image. You can use UIImageView and set contentMode on it to perform AspectFit, ensuring the image will be the same size on every screen type, and also will not get stretched.

myImageView.contentMode = UIViewContentModeScaleAspectFit;

Example: The simplest way to resize an UIImage?

This will preserve the aspect ratio of the image when fitting it to the image view container.

I would provide the image itself with the highest resolution required (@3x), but without @3x in the name, and let UIImageView scale it down to the required size for the other two resolutions.
There is a performance hit in doing this. If it doesn't degrade your scroll performance, go for it.

So basically: start with a high res image and scale down. Do not scale up a low res image, because it won't look crisp. And keep the same aspect ratio so it doesn't stretch.

You will not get rejected for doing this to in-app images.

Community
  • 1
  • 1
FranticRock
  • 3,233
  • 1
  • 31
  • 56
0

If all of your assets have the @3x postfix then the App Store recognizes your app as being optimized for the iPhone 6 (together with correctly sized startup images or .xib / .storyboard). Using bigger images for non-retina or normal retina screen causes your RAM usage to increase and slightly taxes your GPU more but for simple apps this isn't a real concern.

Lucas van Dongen
  • 9,328
  • 7
  • 39
  • 60