ฉันจะตั้งค่าไอคอนสำหรับแอปพลิเคชัน Mac ใน Xcode ได้อย่างไร


87

ฉันได้เรียนรู้มากมายเกี่ยวกับการเขียนโค้ด Objective-C และการออกแบบใน Interface Builder และฉันต้องการตั้งค่าไอคอนสำหรับโปรแกรมง่ายๆของฉัน

ฉันเพิ่ม JPG เดียวกันลงในช่องขนาดทั้งหมดใน Icon Composer และได้รับ ICNS แต่ฉันไม่สามารถหาวิธีเพิ่มลงในโปรเจ็กต์ได้

ขอบคุณล่วงหน้า.

คำตอบ:


163

เนื่องจาก Xcode 4.4 Icon Composer ไม่ใช่วิธีที่แนะนำในการสร้างไอคอนอีกต่อไปและไม่รวมอยู่ในการติดตั้ง Xcode มาตรฐานอีกต่อไป เนื่องจากการเปิดตัว Mac ที่มีจอแสดงผลเรติน่าตอนนี้ขอแนะนำให้จัดเตรียมกราฟิกเวอร์ชันความละเอียดสูงทั้งหมดรวมถึงไอคอนแอปด้วย

ในการตั้งไอคอนให้แอปของคุณภายใต้ Xcode> 4.4 ให้ทำดังต่อไปนี้:

  1. สร้างโฟลเดอร์ [IconName] .iconset ใน Finder

  2. ในโฟลเดอร์นี้วางไอคอนของคุณเป็นไฟล์ png คุณจะต้องมีไอคอนขนาด 16px, 32px, 64px (เฉพาะเรติน่า), 128px, 256px, 512px และ 1024px (เรตินาเท่านั้น)

  3. ไอคอนเหล่านี้ต้องตั้งชื่อด้วยรูปแบบ icon_16x16.png, icon_32x32.png, icon_128x128.png และอื่น ๆ

  4. เพื่อรองรับการแสดงเรตินาคุณต้องเพิ่มไฟล์ไอคอนที่มีความละเอียดสองเท่าชื่อ icon_16x16@2x.png (ขนาด 32x32) icon_32x32@2x.png (ขนาด 64x64) และอื่น ๆ จนถึง icon_512x512@2x.png (ขนาด 1024x1024)

  5. ลากโฟลเดอร์ [IconName] .iconset นี้ไปที่ Xcode (คัดลอกถ้าจำเป็น)

  6. ในไฟล์ info.plist ตั้งค่า "CFBundleIconFile" (Icon File as Key) เป็น [IconName] แต่ไม่มีนามสกุล. iconset

คำอธิบายประกอบ:

  • ไม่จำเป็นต้องระบุไอคอน @ 2x (ในปัจจุบัน)
  • (โดยปกติ) จะใช้งานได้เช่นกันหากคุณไม่ได้ให้ไฟล์ไอคอนทุกไฟล์
  • โฟลเดอร์ชุดไอคอนไม่ควรมีไฟล์ icon_64x64.png ไอคอน 64px ใช้สำหรับ icon_32x32 เวอร์ชันเรตินาเท่านั้น

อัปเดต: ในท้ายที่สุดโฟลเดอร์. iconset ของคุณมี 10 รายการต่อไปนี้:

คู่มืออย่างเป็นทางการ:

https://developer.apple.com/library/content/documentation/GraphicsAnimation/Conceptual/HighResolutionOSX/Optimizing/Optimizing.html

ข้อมูลเพิ่มเติม:

ในการแปลงโฟลเดอร์ iconset เป็นไฟล์ icns ให้รันคำสั่งต่อไปนี้บนเทอร์มินัล:

โดยที่ [IconName] ควรถูกแทนที่ด้วยคำนำหน้าของโฟลเดอร์ iconset ตอนนี้คุณมีไฟล์ชื่อ [IconName] .icns ใน Xcode 4.4 ใน Target Summary ให้คลิกขวาที่เครื่องหมายคำถามสำหรับไอคอนจากนั้นเลือกไฟล์ icns จากนั้นคุณจะเห็นเครื่องหมายคำถามถูกแทนที่ด้วยไอคอน


ในบางกรณีชุดไอคอนจะไม่ถูกเพิ่มลงในเฟสบิลด์ 'คัดลอกบันเดิลทรัพยากร' โดยอัตโนมัติในกรณีนี้คุณต้องเพิ่มลงใน Build Phase ด้วยตนเอง
Reimund

1
หมายเหตุ: Xcode 4.4 จะตรวจสอบและแปลงโฟลเดอร์ชุดไอคอนเป็นไฟล์ icns โดยอัตโนมัติ สิ่งที่คุณต้องทำคือเพิ่มโฟลเดอร์ชุดไอคอนลงในโครงการของคุณและสร้างโครงการ ไฟล์ icns ที่สร้างขึ้นจะถูกเพิ่มโดยอัตโนมัติในผลิตภัณฑ์ที่สร้างขึ้น
EsbenB

1
@kadam คุณพูดถูกที่เป็นเช่นนั้นมาตลอด ฉันแก้ไขคำตอบเล็กน้อยเพื่อทำให้การตั้งชื่อไอคอนเรตินาชัดเจนขึ้น
codingFriend1

1
^ โอ้พวกเขาไม่ได้กล่าวถึงขนาด 64x64 หรือ 1024x1024 ในเอกสารนี้: developer.apple.com/library/mac/#documentation/… ... ดังนั้นจึงลดจำนวนลงเหลือ 10!
Chris Allinson

1
@ChrisAllinson คุณต้องมีไอคอนขนาด 64px และ 1024px แต่เหล่านี้จะถูกตั้งชื่อและicon_32x32@2x icon_512x512@2x.pngฉันได้เพิ่มรายชื่อไอคอนทั้งหมดลงในคำตอบเพื่อชี้แจงเรื่องนี้
codingFriend1

32

ตั้งแต่ Xcode 7 (ไม่แน่ใจว่าเริ่มใช้เมื่อใด) คุณสามารถใช้ไฟล์Assets.xcassetsสำหรับไอคอนแอป ไฟล์นี้รวมไว้โดยค่าเริ่มต้นสำหรับโครงการใหม่

เพียงแค่:

  1. ไปที่การตั้งค่าเป้าหมายของคุณและให้มั่นใจว่าภายใต้การทั่วไป , ไอคอน App แหล่งที่มาของการตั้งค่าเพื่อAppIcon
  2. เพิ่มไอคอน png ทั้ง 10 ไอคอนในภาพ AppIcon ของ Assets.xcassets
  3. ลบข้อมูลที่ได้รับหากคุณเคยเปิดตัวแอปมาก่อนมิฉะนั้นจะยังคงแสดงไอคอนเริ่มต้น
  4. เรียกใช้แอป ตอนนี้ควรแสดงไอคอนของคุณใน Dock, Application Switcher และที่อื่น ๆ ที่ควรปรากฏ

27

ทำตามขั้นตอนเหล่านี้เพื่อเพิ่มไอคอนแอปพลิเคชันในโครงการของคุณ นี่คือไอคอนที่ MacOS จะแสดงในแถบเอกสารและการแสดงแท็บ alt

  • สร้างไอคอนไฟล์ทรัพยากร. icns
  • วางไว้ในโฟลเดอร์ "resources / macos"
  • เพิ่มลงในกลุ่มทรัพยากรในโครงการ xcode
  • แก้ไขไฟล์ Info.plist และเปลี่ยนสตริงค่า "CFBundleIconFile" เป็น "icon"

นอกจากนี้เครื่องมือimg2icnsยังมีประโยชน์ในการแปลงภาพเป็นไอคอน


…เปลี่ยนสตริงค่า "CFBundleIconFile" เป็นชื่อไฟล์. icns ของคุณ FTFY
Francis McGrew

ใน Xcode 7 คุณไม่จำเป็นต้องวางไฟล์. icns ในโฟลเดอร์ใดโฟลเดอร์หนึ่งตราบใดที่อยู่ในกลุ่ม ฉันสร้างโฟลเดอร์ / สินทรัพย์และลากไฟล์ icon.icns ไปยังโฟลเดอร์ใน Xcode จากนั้นฉันแก้ไข Info.plist และตั้งค่าไฟล์ Icon เป็น icon.ins คุณต้องปิดใช้งานคุณสมบัตินี้เพื่อใช้ Assests ในการตั้งค่า 'ทั่วไป' สำหรับแอพ
gbdavid

7

ขั้นตอนในการเพิ่มไอคอนแอปพลิเคชันในโครงการโกโก้ของคุณ

  1. ค้นหา 'Icon Composer' จากสปอตไลท์
  2. ลากและวางไอคอน (ชื่อควรเป็นแบบ Imagename.icns) ในช่องที่กำหนด
  3. เลือกหนึ่งกล่องและบันทึก
  4. ลากและวางภาพที่บันทึกไว้ในโฟลเดอร์ทรัพยากรของแอปพลิเคชันของคุณ
  5. เลือกเป้าหมาย -> คลิกขวาที่ชื่อโครงการ -> เลือก GetInfo
  6. ใน Properties ให้ป้อนชื่อ 'Icon File'
  7. ตอนนี้ทำความสะอาดสร้างและเรียกใช้แอปพลิเคชันของคุณ

1
6 ปีต่อมาใช้ไม่ได้อีกต่อไป
mix3d

7

มันเป็นเรื่องง่าย

  1. ใช้เครื่องมืออัตโนมัติ (เช่น IconFly) เพื่อสร้าง ICNS หรือชุดไอคอนที่ถูกต้องด้วยขนาดที่จำเป็นทั้งหมด

  2. จากนั้นลากและวาง ICNS หรือชุดไอคอนที่สร้างขึ้นไปที่ Xcode

  3. ในไฟล์ info.plist ตั้งค่า "CFBundleIconFile" เป็น [IconName]


3

Xcode 8.2.1

  1. แปลง. png 👉.icnsผ่านIconMaker

  2. เพิ่มไฟล์ AwesomeApp.icns ในโฟลเดอร์เดียวกับ info.plist

  3. ลากไฟล์ AwesomeApp.icns ไปยัง xcode ในโฟลเดอร์เดียวกับ info.plist

  4. ในไอคอนชุด info.plist: ถึง AwesomeApp.icns


4
คุณควรเรียกใช้ command + option + shift + K ซึ่งจะล้างบิลด์ จากนั้นสร้างแอปอีกครั้งและไอคอนควรใช้
Luka Kerr

ฟังดูสะอาดล้ำลึก! การรีบูต xcode และคอมพิวเตอร์ของคุณสามารถทำเคล็ดลับได้ในบางกรณี: P โดยส่วนตัวแล้วฉันไม่จำเป็นต้องล้างบิลด์ก่อนที่จะใช้งานได้ ขอบคุณสำหรับเคล็ดลับ Luka! ใช้เต็มรูปแบบสำหรับผู้ชมในอนาคต
eonist

ลิงค์ @eonist IconMaker ตายแล้ว
jamescampbell

@ jamescampbell เฮ้กีฬาเก่า. อัปเดตแล้ว
eonist

0

ขั้นตอนที่ 1: รับชื่อ iconfile จาก info.plist และวางโฟลเดอร์ icns (ไฟล์ไอคอน) ในโฟลเดอร์ SourceCode / resources

ขั้นตอนที่ 2: และสิ่งเดียวกันสำหรับ xcode คุณต้องคัดลอกภาพทั้งหมดจาก xcode โดยใช้ copyallframeworks หรือ copyall ไฟล์ทรัพยากรใน xcode ของคุณและสร้างแอปอีกครั้ง


@ Asif.Ali ตอบพร้อมขั้นตอน
Rachit kapadia
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.