Make a 1024x1024 PNG image for regular iOS or Mac apps. For Apple Messages Sticker apps, make also a 1024x768 PNG image.
The scripts will create all images required to fill all the icon slots in Xcode. Images are generated in PGN-24 format using Save For Web and all metadata is removed.
Some generated files will have different names but exactly the same size. This is the intended behavior. The idea is to have one file for each slot thus converting the icon installation in Xcode into a brainless drag and drop operation.
The generated file names will sort the images in the order their slots appear in Xcode. For the purposes of the naming scheme, icon group is defined as a set of icons that share in Xcode the same name reference and are only differentiated by their size multiplier.
The naming scheme is <iconGroup@sizeMultiplier>-<partial-Xcode-reference-name>-<reference-size>
, which gives enough information to find where the image file goes and double check it if necessary.
The characters before the first dash should suffice to find the correct slot in Xcode. For example the file 5@2x-iPad-Notifications-20pt.png
will go into the 5th iOS app icon group, 2x slot. The rest of the name is there to eliminate any doubt.
Open Terminal.app
and type the following like a badass:
$ git clone https://github.com/marcolabreu/Xcode-icons-script.git
$ cd Xcode-icons-script/
$ ./install.sh
Or, do it manually:
- Download script
- Copy individual scripts or the
Xcode-icons-script
folder to/Applications/Adobe Photoshop CC 2018/Presets/Scripts/
- Open Photoshop CC 2018 (or restart if it was open during install)
- Select
File > Scripts > <Script Name>
- Follow the dialog prompts
The scripts do not handle naming collisions and will overwrite any existing files with the same names in the destination directory. You've been warned!
-
Apple iOS Human Interface Guidelines, App Icon
-
[Creating Stickers for iMessage] (https://developer.apple.com/stickers/)
Modified and currently maintained by @marcolabreu
Forked from @jessesquires's version of @appsbynight's mod of the original script by @mattdipasquale.