รู้จักกับ Alloy Framework บน Titanium Mobile

หลังจากที่ ทาง Appcelerator ได้ทำการ update Titanium Studio เป็น Version 3.0 นั้นในตัว Titanium นั้นมีการรองรับ Feature ใหม่ ๆ ต่าง ๆ มากมาย ซึ่งหนึ่งในนั้นก็ คือ Alloy Framework นั่นเองครับ



Titanium Mobile Update 3.0

วันนี้ทาง Appcelerator ได้ทำการ ปล่อย Update ตัว Titanium Mobile เป็น Version 3.0 โดยใน Version 3.0 นี้นั้น ส่วนใหญ่จะเป็นการ Update เพื่อรองรับ Feature ใหม่ ๆ ของ Android Version ใหม่ ๆ นั่นเองครับ



การใช้งาน Picker แบบ Multi Column (สำหรับ iOS เท่านั้น)

หลังจากที่เราได้รู้จักวิธีการใช้งาน Picker แบบ ธรรมดา ๆ ไปแล้ว ในบทความ การใช้งาน Picker ใน Titanium Mobile ในบทความนี้ผมจะนำเสนอการใช้งาน Picker แบบ Multi Column นะครับ

การใช้งาน Picker แบบ Multi Column

การใช้งาน Picker ใน Titanium Mobile

หลังจากห่างหายจากการเขียนบทความเรื่องนี้ไปสักพัก เนื่องจากติดภาระกิจบางประการทำให้ไม่สามารถทำการเขียนบทความได้ แต่วันนี้มีเวลาแล้ว เรามาต่อกันเลยดีกว่าครับ กับ Object ที่มีเอาไว้ให้ผู้ใช้ทั้งหลายได้ทำการเลือกข้อมูลต่าง ๆ ได้ตามที่ต้องการ Object นั้นคือ Picker ครับ

Picker-Basic

Update - Titanium SDK 2.1.4

เมื่อวันที่ 12/11/2012 ทาง Appcelerator ได้ออก Update Titanium SDK 2.1.4 มาให้ได้ทำการ Update กัน การ Update ใน Version นี้จะมีอะไรบ้างเราไปดูกันครับ



Titanium SDK 2.1.4 นี้เป็นการ แก้บั๊กที่พบเจอในVersion ก่อนหน้านี้นะครับ โดยมีการแก้ไข Bug ดังนี้ครับ

ดึงข้อมูลจากแหล่งต่าง ๆ ด้วย Titanium.Network.HTTPClient

เนื่องจากในปัจจุบันนั้นการดึงข้อมูลจาก Provider ต่าง ๆ นั้นเป็นสิ่งที่จำเป็นเนื่องจากหากเราต้องจัดเกบข้อมูลเองทั้งหมดคงไม่เป็นเรื่องที่ดีอย่างแน่นอน จึงทำให้เกิด Service ในรูปแบบต่าง ๆ เช่น RESTful และ SOAP ซึ่งทั้ง 2 อย่างนี้จะเป็นมาตรฐานการรับส่งข้อมูลในรูปแบบของ Web Service ที่ปัจจุบันมีใช้กันอย่างแพร่หลาย และการที่เราต้องการข้อมูลประเภทนี้ ทาง Appceletor ผู้พัฒนา Titanium Studio ได้สร้าง API ตามมาตรฐานของ XMLHttpRequest และ API ที่เราจะทำการเรียกใช้นั่นก็คือ

Titanium.Network.HTTPClient


การใช้งาน JSON กับ Titanium Mobile

หลังจากที่เราได้รู้จักกับ JSON ไปแล้วในบทความ JSON คืออะไร มาถึงบทความนี้ก็จะกล่าวถึงวิธีการนำ JSON มาใช้ใน Titanium Mobile ครับ


JSON คืออะไร ??

JSON ย่อมาจาก คำว่า JavaScript Object Notation เป็นฟอร์แมตสำหรับแลกเปลี่ยนข้อมูลคอมพิวเตอร์ ฟอร์แมต JSON นั้นอยู่ในรูปข้อความธรรมดา (plain text) ที่ทั้งมนุษย์และโปรแกรมคอมพิวเตอร์สามารถอ่านเข้าใจได้


มาตรฐานของฟอร์แมต JSON คือ RFC 4627  มี Internet media type เป็น application/json และมีนามสกุลของไฟล์เป็น .json

SQLite กับ Titanium Mobile

SQLite เป็น Database ขนาดเล็กที่ได้รับความนิยมสำหรับ Application ที่ทำงานบน Smart Phone ทั้ง iOS และ Android ซึ่งมีรูปแบบการทำงานแบบ Standalone คือ ทำงานอยู่ใน Application นั้น ๆ โดย SQLite นั้นมีโครงสร้างที่ง่ายต่อการจัดเก็บและมีขนาดเล็กมาก จึงเหมาะกับการทำงานบน Smart Phone เป็นอย่างยิ่ง

การใช้งาน Dashboard View (iOS)

ในบทความนี้ผมจะกล่าวถึง View อีกชนิดหนึ่งที่ใช้ได้เฉพาะใน iOS เท่านั้น สามารถเพิ่ม ลบ หรือ เคลื่อนย้าย Icon ที่อยู่บน View ได้โดยเราเรียก View ประเภทนี้ว่า Dashboard View ครับ



การใช้งาน Event ของ Titanium.App

จากที่ได้เคยกล่าวถึง Titanium.App ใน รู้จักกับ Titanium.App ตอนท้ายของบทความผมได้กล่าวเอาไว้ถึงการใช้งาน Event ของ Titanium.App เอาไว้ในบทความนี้เราไปดูกันครับว่า มันใช้งานอย่างไร


รู้จักกับ Transition (iOS) และ การแสดง Window แบบ Modal

ไม่ทราบว่าเคยสังเกตกันบ้างหรือไม่ว่า Application ที่เราได้พัฒนากันขึ้นมา ตอนเปิดหน้า Window แรกทำไมมันแค่แสดงขึ้นมาโดยที่มันไม่มี Effect เลย ไม่ว่าจะพลิกซ้าย พลิกขวา หรือ เปิดขึ้นเหมือนเราเปิดหนังสือ โดยบน Titanium เองมีวิธีการง่าย ๆ มาให้ครับ แต่จะทำอย่างไรกันนั้นเราไปดูกันครับ


รู้จักกับ Titanium.App

สวัสดีครับบทความนี้จะกล่าวถึง Module ที่อยู่ใน Level สูงสุดของ Titanium ครับนั่นก็คือ Module Titanium.App

Titanium Studio

วิธีการใช้ CommonJS ใน Titanium Studio

หลังจากที่เราได้รู้จักกับ CommonJS ไปแล้วในบทความ รู้จักกับ Common JS นั้นในบทความนี้จะกล่าวถึงวิธีการเขียน Module ให้อยู่ใน รูปแบบ ของ Common JS เพื่อที่จะนำมาใช้ ใน Titanium Studio นี้ครับ

รู้จักกับ CommonJS


อย่างที่เราทราบกันนะครับว่า JavaScript นั้นสามารถทำงานได้อย่างรวดเร็ว แต่ด้วยข้อจำกัด ทำให้ JavaScript API นั่นสามารพัฒนาอยู่บน Web Browser เท่านั้นและด้วยตัว มาตรฐานของมัน ไม่เหมาะกับการใช้พัฒนาในระยะยาวอีกด้วย ซึ่ง Common JS เป็น API ที่เข้ามาเพื่อรองรับกับปัญหาดังกล่าวนี้ โดยตัว API ของ Common JS นั้นได้ทำการร รวบรวม Library ของ Python, Ruby และ Java มาไว้ด้วยกัน ทำให้สามารถเข้าถึง Application ที่ถูกพัฒนา Complier ด้วย Javascript API ที่แตกต่างกันได้อีกด้วย นั่นหมายความว่า เราสามารถนำ Java script มาใช้พัฒนา Application ต่าง ๆ ได้เช่น
  • Server-side JavaScript applications
  • Command line tools
  • Desktop GUI-based applications
  • Hybrid applications (Titanium, Adobe AIR)
หรือหมายความว่าเราสามารถเขียน Javascript เพื่อไปรันที่อื่น ๆ โดยที่เราไม่จำเป็นต้องใช้ Web Browser เพื่อ รัน Script นั่นเอง

Titanium SDK Update 2.1.3

ตอนนี้ Titanium SDK ได้ออก Update เป็น Version 2.1.3 แล้วนะครับโดยมีการเพิ่ม Feature ต่าง ๆ เข้าไปพอสมควร หลัก ๆ เลยคงเป็นเรื่องของการ สนับสนุน iPhone 5 และ iOS6 ครับ แต่จะมีอะไรบ้างนั้นไปดูกันเลยครับ


แสดงตัวเลขบน icon app (สำหรับ ios)

หลังจากหยุดเขียนไปซักพัักเนื่องจาก ไปติด NoSQL อยู่เลยทำให้ไม่มีโอกาศเขียน วันนี้เลยถือโอกาศมาเขียนบทความเพิ่มเติมให้ได้อ่านกัน แต่วันนี้เป็นเรื่องง่าย ๆ สบาย ๆ ก่อนละกันนะครับ นั่นก็คือ การแสดงตัวเลขบน icon ของ Application นั่นเองครับ


Menu สำหรับ Android

บทความนี้ผมจะขอไปที่ Android ซะหน่อย โดยปกติแล้วบน Android จะมีปุ่มที่เป็นทั้ง Hardware และ Softkey มาให้ด้วย นั่นก็คือ ปุ่ม Menu นั่นเองครับ ปุ่ม Menu นี้เอาไว้ใช้ในกรณีที่ต้องการให้ในหน้าจอของโปรแกรมต่าง ๆ ที่เราพัฒนาขึ้นมีตัวเลือกให้กับผู้พัฒนาในการใส่คำสั่งหรืออื่น ๆ ที่ไม่ต้องการให้แสดงอยู่บนหน้าจอนั่นเองครับ


แสดงตัวเลขบน Tab Group (TabGroup badge) เฉพาะ iOS

บทความนี้เราจะมาด้วยเรื่องเบา ๆ กันนะครับนันก็คือ TabGroup Badge นั่นเองครับ

จัดวาง object ใน window หรือ view ให้ดูดีด้วย layout

ใน  Window และ View ทั้งหลายนั้น มี Property อยู่หนึ่งอย่างที่ทำให้เราสามารถเลือกวาง Object ต่าง ๆ ได้อย่างเป็นระบียบเรียบร้อย​ซึ่ง Property นั้นก็คือ layout นั่นเองครับ

เรียกใช้งาน Map ด้วย Titanium Mobile

ในบทความนี้จะกล่าวถึงสิ่งที่ติดอยู่กับ Android และ iPhone สิ่งนั้นก็คือ Map นั่นเองครับ



เปิด Photo Gallery ด้วย Titanium Mobile

ในบทความนี้ จะเป็นการเปิด Photo Gallery เพื่อเลือก ภาพที่อยู่ในเครื่องมาทำการแสดงบน Application ครับการแสดงภาพอันนี้ไม่จำเป็นต้องทดสอบบนเครื่องจริง ๆ ก็ได้ครับ  สามารถทดสอบบน Emulator ได้เลยครับ เพียงแต่ใน Emulator นั้นต้องมีรูปภาพอยู่เท่านั้นเอง

ใช้งานกล้องถ่ายรูปด้วย Titanium Mobile

ในบทความนี้ จะเป็นการใช้งานกล้องถ่ายรูป เพื่อให้สามารถถ่ายภาพโดยผ่าน Application ที่เขียนขึ้นมาเองได้นะครับ โดยการทดสอบทั้งหมดจะต้องไปทำการทดสอบบน Device จริง ๆ กัน ทั้ง บน iOS และ Android ส่วนวิธีการนำ Application ไปทดสอบนั้น ผมได้เคยกล่าวไปแล้วในบทความ ทดสอบ บนเครื่องจริง สำหรับ Android และ ทดสอบบนเครื่อง สำหรับ iOS ส่วนวิธีการเรียกใช้งาน กล้องถ่ายรูปใน Application นั้นทำอย่างไรเราไปดูกันเลยครับ

ทดสอบบนเครื่อง สำหรับ iOS

สำหรับ iOS นั้นหากเราต้องการที่จะนำ Application ที่เราพัฒนาขึ้นมานั้นไปรันบน Device จริง ๆ นั้นเราต้องมีดังนี้
หากมีทุกอย่างข้างต้นครบแล้ว เราก็มาเริ่มกันเลยครับ คลิกที่ Menu Run แล้วเลือกเป็น iOS Device


ทดสอบ บนเครื่องจริง สำหรับ Android

จากการที่เราได้ทำการ สร้าง Application เพื่อให้ทำงานบน Emlator แล้ว ทีนี้เราจะลองเอาไปรันบนเครื่องจริง ๆ กันครับบทความนี้จะกล่าวถึงการ นำ Application ที่เราทำไว้แล้วไปรันทดสอบบนเครื่องจริง ๆ กัน สิ่งที่เราต้องมีครับ
  • Android 1 เครื่อง
  • สาย USB
อันดับแรกครับ เราเอา Android ของเรา เชื่อมต่อกับเครื่องคอมพิวเตอร์ของเราก่อนเลยครับ (สำหรับผู้ใช้ Windows ต้องติดตั้ง Driver ให้เรียบร้อยก่อนนะครับ)  จากนั้นทำการเปิด  USB Debugging ที่โทรศัพท์  โดยไปที่ Setting -> Applications -> Development  เลือก USB Debugging  ครับ  จากนั้นกลับมาที่ Titanium Studio ครับ เลือกที่ ปุ่ม Run แล้วก็เลือก Android Device ครับ


จากนั้นก็รอจนกว่าจะเจอ Message  แบบนี้ครับ

แล้วก็ไปที่ โทรศัพท์ ของคุณ รันโปรแกรมที่ได้พัฒนาได้แล้วหล่ะครับ หากไม่มีการเปลี่ยน icon ของตัว Application ตัว Application จะเป็นรูป Logo ของ Titanium นะครับ

Web View

ในบทความนี้เราจะกล่าวถึง  Web View นะครับ Web View คืออะไร  มันก็คือ View ที่เอาไว้เปิดแสดง Web หรือ Content ที่เป็น HTML นั่นเองครับ

การใช้งาน ImageView

บทความนี้เราจะมาทำความรู้จักกับ Image View กันนะครับ จากชื่อก็บอกอยู่แล้วครับว่ามันคือ View ที่เอาไว้แสดง รูปภาพ นั่นเองครับ

การใช้ ScrollableView

Scrollable  View คือ Container สำหรับจัดเก็บ View เพื่อแสดงในรูปแบบของ Paging เพื่อให้เห็นภาพได้ง่าย ๆ ให้นึกถึง Photo Gallery ใน โทรศัพท์​ของพวกเรา ครับ เอาหล่ะครับ เราไปเริ่มกันดีกว่าครับ ว่า มันใช้งานอย่างไร

การใช้งาน ScrollView

บทความนี้เราจะมาทำการรู้จักกับ ScrollView กันนะครับ Scroll View เป็น View ประเภทหนึ่งครับ ที่สามารถเลื่อนขึ้นลง , ซ้ายขวา ได้ ตามแต่ที่ เราทำการ ตั้งค่า เอาไว้

การใช้งาน Tab Group เพื่อเปิด Window ใหม่ (เฉพาะ iOS)

หลังจากที่เราได้รู้จักกับ Navigator Group และ Tab Group  ไปแล้ว แต่สิ่งหนึ่งที่ผมยังไม่ได้นำเสนอไปคือ การใช้ Tab Group เพื่อเปิด Window อีก window นึง นั่นเองครับ ซึ่งลักษณะการทำงานของ Navigator Group ที่อยู่ใน Tab Group นั้นก็จะเหมือนกับ Navigator Group ธรรมดา ๆ ครับ วิธีการก็ไม่ยากครับ



การใช้งาน Navigator Group (เฉพาะ iOS)

จากที่ผ่านมาเราได้รู้จักกับ window ไปแล้วนะครับ แต่ไม่ทราบว่าได้สังเกตุ กันหรือเปล่าว่า Window ที่ถูกสร้างขึ้นมาด้วย Code เราทำการเขียนเอาไว้มันขาดอะไรไปอย่างหนึ่ง มันขาด Title ไปนั่นเองครับ แล้วเราจะเอามันมาได้อย่างไร หล่่ะ
  • ใช้  TabGroup ครับ แต่.....เราไม่ได้ต้องการให้มี Tab อยู่ด้านล่าง
  • ใช้  Navigator Group ครับ
ในบทความนี้เราจะกล่าวถึง Navigator Group ที่ไม่ได้มีเอาไว้แค่ โชว์ Title เท่านั้น มันยังสามารถเปิด  Window ใหม่พร้อมทั้ง สร้างปุ่ม Back ให้คุณโดยอัตโนมัติอีกด้วย แล้วมันใช้งานอย่างไรหล่ะ เราไปดูกันเลยครับ


การใช้ Option Dialog

หลังจากที่เรารู้จักกับ Alert Dialog ไปแล้ว ก็​มาถึง Dialog อีกประเภทหนึ่งที่ถูกเรียกใช้งานค่อนข้างบ่อย นั่นก็คือ Option Dialog นั่นเองครับ หน้าตาของ Option Dialog เป็นแบบนี้ครับ
Opton Dialog

การใช้ Alert Dialog

จากที่ผ่าน ๆ มานั้นเราได้เรียนรู้วิธีการเขียนโปรแกรมเพื่อสร้าง UI ต่าง ๆ ไปแล้ว และในบทความนี้จะกล่าวถึง สิ่งที่เอาไว้โต้ตอบ เตือน หรือ สอบถาม กับผู้ใช้ ซึ่งนั่นก็คือ Dialog ซึ่ง Dialog ที่เราจะกล่าวถึงใน บทความนี้ก็คือ Alert Dialog นั่นเองครับ

Alert Dialog

Tab Group



Container อีกประเภทหนึ่งที่ถูกใช้่ค่อนข้างบ่อยใน Applicatoin หลาย ๆ ตัว น้่นก็คือ Tab Group นั่นเองครับ โดยที่  TabGroup  ในบทความนี้จะทำให้ทุกท่านได้รู้จักกับ Tab Group มากยิ่งขึ้น เรามาเริ่มกันเลยนะครับ



รู้จักกับ TableView



หลังจากที่เราได้รู้จัก Object ต่าง ๆ กันไปพอสมควร วันนี้ผมก็จะนำเสนอ Container อีกประเภทหนึ่ง ที่ใช้กันบ่อยมาก ๆ เลยนะครับ Container นั้นก็ คือ TableView นั่นเองครับ ด้วยตัวชื่อก็ บอกอยู่แล้วครับว่า มันคือ Table แล้วมันสามารถทำอะไรได้บ้างเราไปดูกันครับ เราสามารถสร้างมันขึ้นมาได้ด้วยคำสั่ง

การสร้าง View



เมื่อเรารู้จักกับการสร้าง Windows และ Object พิ้นฐานไปบ้างแล้ว สิ่งต่อมาที่เราควรจะต้องรู้จักนั่นก็คือ View นั่นเองครับ

View เป็น Container สำหรับวาง Object ต่าง ๆ ซึ่งจะมีความคล้ายคลึงกับ Window เพียงแต่ไม่สามารถสั่ง Open หรือ Close ได้ สามารถกำหนดรูปแบบการแสดงได้หลากหลาย โดยส่วนใหญ่แล้วจะใช้ Object View เพื่อการแสดงผลในส่วนต่าง ๆ ของ Window  อีกด้วย โดยที่เราสามารถสร้าง View ได้ด้วยคำสั่ง

Text Input

สำหรับในบทความนี้นั้นเราจะกล่าวถึง Input Box ประเภท Text นั่นก็คือ TextField และ TextArea นั่นเองครับ ทั้ง 2 Object นี้ มีความสำคัญต่อการพัฒนาโปรแกรมบน มือถือ มากพอสมควรครับ เนื่องจากมันจะเป็นที่รองรับการ Input ข้อมูลต่าง ๆ ที่  User ได้ทำการพิมพ์เข้ามานั่นเอง โดยที่ทั้ง 2 ตัวนั้น มีึความแตกต่างกันอย่างไรบ้าง ลองไปดูกันครับ

เริ่มต้นกับ Window , Button และ Label

  การพัฒนาโปรแกรมไม่ว่าจะเป็น Web หรือ จะเป็น  Application ต่าง ๆ ส่วนที่สำคัญที่สุดก็คือ  User Interface โดยที่ ทาง Titanium Studio เองนั้น ไม่ได้เตรียมเครื่องมือสำหรับการสร้าง UI ในลักษณะของ Visual มาให้จังทำให้เราต้องทำการสร้าง UI ขึ้นเองด้วยการ Coding ดังนั้น ในบทความต่อจากนี้จะเป็นการเริ่มต้นการสร้าง UI จากพื้นฐานทีสุดนั้นก็คือ Window

รู้จักโครงสร้างของ Project ใน Titanium Studio

โครงสร้างของ Project

โครงสร้างของ Project แต่ละ ​Project นั้นจะมี โครงสร้างที่เหมือนเกือบทั้งหมด โดยใน Version ล่าสุดของ Titanium Studio นั้น จะประกอบไปด้วย Folder หลัก ๆ อยู่ 2 Folder นั้นก็คือ i18n และ Resources พร้อมทั้งยังมี File ที่เป็น File Log และ License ต่าง ๆ ของ ตัว Titanium Studio เอง และที่สำคัญที่สุด ใน Root ของ Project นั้น ๆ ก็คือ ไฟล์ tiapp.xml

ติดตั้ง Titanium Studio และเริ่มใช้งาน Titanium Studio

ติดตั้ง Titanium Studio 



ก่อนจะไปถึงการติดตั้งเรามาทำความเข้าใจกันก่อนดีกว่าครับ ในเรื่องของการ พัฒนาโปรแกรมนั้น หากคุณต้องการพัฒนา Application บน iOS นั้น ต้องดำเนินการบน Mac OS เท่านั้น ส่วน Platform Android นั้น สามารถเลือกพัฒนาได้ทั้ง Mac และ Windows นะครับ

Titanium Studio

Titanium Studio คืออะไร 




Titanium Studio เป็น Tools จาก Appcelerator, Inc.  สำหรับสร้าง Application แบบ Cross-Platform ในลักษณะของ Native Application ซึ่งนั้นก็จะหมายถึง Application ที่ถูกสร้างด้วย Titanium Studio นี้ จะมีความสามารถเทียบเท่ากับ Application ที่ถูกเขียนขึ้นด้วย ภาษาเฉพาะเจาะจงของแต่ละ Platform นั่นเอง

เขียนโปรแกรม ให้ iOS กับ Android ????


เขียนโปรแกรม ให้ iOS กับ Android ????


ก่อนอื่นต้องทำความเข้าใจกันก่อนว่า การเขียนโปรแกรมใด ๆ เพื่อที่จะให้สามารถทำงานได้บน โทรศัพท์มือถือระบบปฎิบัติการนั้น ๆ ต้องเริ่มจากการที่เราต้องเรียนรู้ภาษาที่ใช้ สำหรับสร้างมันขึ้นมา

โดยที่เราสามารถเขียนโปรแกรมเพื่อให้สามารถทำงานได้ทั้งหมด 3 วิธีด้วยกัน ประกอบด้วย Native Application, Web Application  และ Hybrid Application โดยที่แต่ละประเภทก็อาจจะมีแตกแยกย่อยลงไปอีกมากมาย โดยที่มันแล้วแต่ความถนัดของแต่ละบุคคล แล้วแต่ละประเภทมันคืออะไรบ้างหล่ะ เราไปดูกัน