Get device image scale (e.g. @1x, @2x and @3x)

javiazo picture javiazo · Jun 1, 2015 · Viewed 12.7k times · Source

I have an app that uses a service to get some icons.

With this service I can get any image of any size, so I've planned to get the 3 images (@1x, @2x and @3x) and store them on the BBDD, and then get the scale to use one of these three; or maybe get only the one according with the device scale.

But the thing is, how can I get the device scale (@1x, @2x and @3x) programmatically?

Both Obj-c and Swift are welcomed ;)

Answer

iphonic picture iphonic · Jun 1, 2015

Use

[UIScreen mainScreen].scale;

this will give you the exact scale as per device.

In Swift 3

UIScreen.main.scale

Cheers.