XCode custom template

มกราคม 26, 2010 at 2:21 pm 2 ของความคิดเห็น

…กลับมาแล้วครับ

กลับมาแล้วสำหรับ Entry iPhone Development แต่คราวนี้จะกลับมาเขียนที่นี่ที่เดิม เพราะ Host ของเวบ i-gee กำลังจะหมดอายุแล้ว แล้วผมเองก็ไม่ได้ทำอะไรกับมันมากซะด้วย คิดว่าจะไม่ต่ออายุและปล่อยให้มันหมดไป ถ้าจะเปิด Web ใหม่อีกครั้ง คงหา Community ให้ได้ซักจำนวนหนึ่งก่อน แล้วมาช่วยๆกันเขียนดีกว่า ใครสนใจก็คุยกันได้นะครับ

กลับมาคราวนี้ เริ่มต้นกันที่เรื่องที่(ดูเหมือนจะ)ยาก แต่จริงๆแล้วง่ายมากๆ และใช้ประโยชน์ได้มากด้วยเช่นกัน เรื่องนั้นก็คือเรื่องของ Template

โดยปกติแล้ว apple จะมี Template สำหรับการพัฒนา Application แบบต่างๆมาให้เราใช้ เช่นแบบ View-based, Tableview-based etc… ซึ่ง โดยปกติแล้ว เวลาเราเริ่มโปรเจคก็จะเริ่มกันจาก Template พวกนี้ แต่ถ้างานของเรามันนอกเหนือจาก Template ที่ Apple ให้มา

อย่างเช่นงานที่ผมทำอยู่ Application ของ True ทุกตัว จะมี Intro screen, Splash screen ของ Application (ซึ่งผิดหลัก HIG ของ Apple ทุกอย่าง) ซึ่งหมายความว่า ผมจะต้องใส่พวกนี้ซ้ำๆทุกครั้งที่มีการเริ่มโปรเจคใหม่ ซึ่งข้อเสียก็คือ 1) เสียเวลา 2) อาจจะลืมใส่หรือลืม Config ค่าบางอย่าง ซึ่งถ้าไอพวกที่ต้องใส่นี้ถูกใส่ไปตั้งแต่สร้างโปรเจค ปัญหาและ defect เรื่องเดิมๆพวกนี้ก็จะหมดไป

นอกจากนั้นยังมีประโยชน์แบบอื่นๆ (อย่างเช่นเรื่องของการทำ Test Case ที่ผมจะเขียนใน Entry หลังๆ) อีกครับที่ได้จากการทำ Template

ดังนั้น สร้าง Template ไว้ใช้เองกันดีกว่า

เริ่มจาก สำหรับ Snow Leopard ไฟล์ Template ของ XCode จะถูกเก็บอยู่ที่ /Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode ภายใน Folder นี้ก็จะมี Template ต่างๆ ซึ่งที่เรากำลังจำทำเป็น Project Template ก็เข้าไปที่ Folder Project Templates/Application

จะพบ Template หลายแบบมากมาย การจะสร้าง Template ของเรา วิธีที่ง่ายที่สุดของเราก็คือ “Copy” Template แบบที่ใกล้เคียงของเรามากที่สุดครับ จากนั้น ตั้งชื่อ Folder ก็จะเป็นการตั้งชื่อ Template ของเราแล้ว ตอนนี้ ถ้าลอง Create New Project ใน XCode ก็จะเจอ Template ของเราแล้วครับ

ให้เรา เปิดไฟล์ ___PROJECTNAME___.xcodeproj และแก้ไข Template ตามที่ต้องการครับ จะแอด Library, Framework, Config compiler ยังไงก็ตามต้องการเลย ส่วนตรงไหนที่ต้องการให้ Dynamic ตามชื่อของโปรเจคที่ถูกสร้างก็ใส่ prefix ชื่อ ___PROJECTNAME___ เข้าไปครับ

เท่านี้ก็เสร็จแล้ว หลังจากนี้ เราก็สามารถสร้าง Project ด้วย Template ของคุณเองได้แล้ว ง่ายมากเลยใช่มั้ยครับ แต่ถ้ายังไม่ทำให้คุณรู้สึกเป็นเจ้าของของมัน (เพราะแค่ Copy มาแล้วแก้เอา) คุณก็สามารถระบุ Description และเปลี่ยน Icon Image ได้ด้วย

วิธีการก็คือ ให้คลิกขวาที่ ___PROJECTNAME___.xcodeproj แล้วเลือก Show Package Contents คราวนี้ละครับ ถ้าต้องการเปลี่ยน Description ของ Template ของเรายังไง ก็เปลี่ยนในไฟล์ TemplateInfo.plist ได้เลย

ส่วนรูปภาพ ก็ให้ใช้โปรแกรม Icon Composer (อยู่ที่ /Developer/Applications/Utilities) สร้างไฟล์ icns ขึ้นมา วิธีการใช้โปรแกรมนี้ก็ง่ายมาก แค่เอารูปภาพที่มีขนาด 512×512 ใส่ลงไปในช่อง 512 หรือถ้ามีขนาดเล็กกว่านั้นก็ใส่ช่องเล็กกว่านั้นหรือใส่ช่องใหญ่ไปด้วยก็ได้ จากนั้นก็ Save as.. ที่ path ที่ต้องการ ซึ่งสำหรับ template ก็ตั้งชื่อเป็น “TemplateIcon.icns” ด้วย จากนั้นก็เอาไปใส่แทนรูป Logo template ที่เราต้องการจะเปลี่ยน แค่นี้ก็เรียบร้อยครับ

เป็นไงครับ ง่ายๆแต่ได้ผล แค่นี้เราก็มี Template ไว้ใช้เองแล้ว สำหรับ Entry นี้ก็ขอจบไว้แค่นี้ Happy coding with your template ครับ ;)

Entry filed under: Cocoa Programming, iPhone Programming. Tags: , , , , , , .

Intention 2010 Array in Objective-C & How to shuffle members

2 ความเห็น Add your own

  • 1. biggoogle  |  กุมภาพันธ์ 3, 2010 ที่ 12:06 pm

    ตามมาติดตามผลงานอีกครับ

    เพราะยังเขียนแบบ คิดเองไม่เป็นครับ

    ได้แต่ลอกตัวอย่าง ลอกคนอื่นครับ

    อยากให้เขียนวิธีการคิด วิธีหา class method มาใช้ และทำไมถึงใช้มัน

    ตอบกลับ
    • 2. Jerapong Nampetch  |  กุมภาพันธ์ 3, 2010 ที่ 3:00 pm

      Class method แบบที่เรียกใช้โดยไม่ต้อง init น่ะเหรอครับ

      โดยส่วนตัวคิดว่าใช้เพื่อความสะดวก สำหรับการใช้งานง่ายๆ สั้นๆนะครับ คิดว่าเชิงลึกน่าจะมึประโยชน์อื่นๆอีก ขอ research ก่อนนะครับ แล้วจะมาเขียนให้

      ขอบคุณที่เสนอหัวเรื่องที่น่าสนใจนะครับ ;)

      ตอบกลับ

ใส่ความเห็น

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  เปลี่ยนแปลง )

Google photo

You are commenting using your Google account. Log Out /  เปลี่ยนแปลง )

Twitter picture

You are commenting using your Twitter account. Log Out /  เปลี่ยนแปลง )

Facebook photo

You are commenting using your Facebook account. Log Out /  เปลี่ยนแปลง )

Connecting to %s

Trackback this post  |  Subscribe to the comments via RSS Feed


del.icio.us For iPhone dev

Post Calendar

มกราคม 2010
พฤ อา
« ธ.ค.   ก.พ. »
 123
45678910
11121314151617
18192021222324
25262728293031

%d bloggers like this: