ปลูกผักสลัดไฮโดรโปนิกส์(Hydroponic lettuce) – วันที่ 1 และ 2 เริ่มต้นเพาะเมล็ดผักสลัด

ปลูกผักสลัดไฮโดรโปรนิกส์ วันที่ 1 งานวันแรกของการเริ่มต้นปลูกผักสลัดไฮโดรโปนิกส์ ก็คือ การเริ่มต้นเพาะเมล็ด การเพาะเมล็ดนั้นมีหลายๆ วิธี แต่วิธีที่ที่บ้านนิยมใช้ก็คือ การเพาะในกล่องแบบมีฝาปิด แล้วนำเมล็ดผักแช่ตู้เย็น โดยขั้นตอนการเพาะมีดังนี้:- เตรียมกล่องที่มีฝาปิดสนิท นำทิชชูมาวางรองตรงก้นกล่อง การนำเมล็ดมาวางบนทิชชู จะจัดเรียงให้สวยงาม หรือจะไม่จัดเรียงแล้วโรยไว้ก็ได้ ตามถนัด วางเมล็ดเสร็จแล้ว พรมน้ำพอให้ชื้นๆ(อย่าให้มีน้ำขังมากนั่งเดี๋ยวเมล็ดจะเน่า) จากนั้นจึงปิดกล่องให้สนิท นำกล่องที่เตรียมเมล็ดเสร็จแล้ว แล้วนำเข้าไปแช่ตู้เย็นในช่องธรรมดา 1 คืนในวันแรก รอบนี้เมล็ดที่เห็นในกล่องจะมี:- เรดโอ๊ค กรีนโอ๊ค กรีนคอส บัตเตอร์เฮด กรีนบัตตาเวีย ปลูกผักสลัดไฮโดรโปรนิกส์ วันที่ 2 ในวันที่ 2 ของการเพาะเมล็ดผักสลัด ให้นำเอากล่องที่แช่ตู้เย็นไปเมื่อวาน ออกมาวางในอุณหภูมิห้อง แต่ยังต้องปิดฝาสนิทอยู่นะ ทิ้งไว้อีก 1 วัน วันนี้แหละเรากเมล็ดผักสลัดจะเริ่มงอกแล้ว เหตุผลที่ต้องแช่ตู้เย็นเพราะเมล็ดผักสลัดต้องการความเย็น, ความชื้น เพื่อนกระตุ้นให้เมล็ดผักเตรียมงอก เคยอ่านในหนังสือ เค้าบอกว่าการทำแบบนี้เป็นการเลียนแบบธรรมชาติของผักสลัดที่มาจากเมืองหนาว เมล็ดผักสลัดที่อยู่ในความหนาวจะอยู่ในช่วงพัก เตรียมเก็บน้ำ, เก็บความชื้นและรอที่จะงอกเมื่อเจอสภาพอาการอาการอุ่นๆ ดังนั้นเมล็ดที่พรมน้ำใส่กล่องไว้แล้วนั้น พอแช่ตู้เย็นไว้ 1 Read more about ปลูกผักสลัดไฮโดรโปนิกส์(Hydroponic lettuce) – วันที่ 1 และ 2 เริ่มต้นเพาะเมล็ดผักสลัด[…]

การสร้าง UICollectionView ซ้อนใน UICollectionView

UICollectionView คืออะไร? UICollectionView คือ คลาสคอมโพเนนท์ที่ทำหน้าที่จัดการลำดับการแสดงผลของกลุ่มของออบเจคในเลย์เอาท์ที่ปรับแต่งได้ สำหรับ CollectionView นั้นมีฟังก์ชันพื้นฐานทั่วไปทำงานเหมือนกันกับ TableView นอกจากว่า CollectionView นั้นสามารถที่จะจัดรูปแบบการแสดงผลได้มากกว่า 1 คอลัมน์ขึ้นไป หลายคนคงคุ้นเคยกับการใช้งานกับ UITableView กันอยู่แล้ว แต่ UITableView มีข้อจำกัดที่รูปแบบในการแสดงข้อมูลจะเป้นในลักษณะข้อมูลเรียงกันจากบนลงล่าง ซึ่งเหมาะกับสมัยก่อนที่หน้าจอของมือถือยังไม่ใหญ่มากพอจะแสดงข้อมูลหลายๆอย่างในแถวเดียวกันได้ แต่พอมือถือมีขนาดหน้าจอที่ใหญ่ขึ้นๆ ทำให้การแสดงข้อมูลเพียงอันเดียวต่อแถว ดูเป็นการใช้พื้นที่หน้าจอที่ไม่เหมาะสม UICollectionView เป็นเหมือน UITableView ที่ต่อยอดขึ้นมาเพื่อแสดงผลในรูปแบบที่หลากหลายได้มากขึ้น โดยสามารถแสดงเป็น grid หรือแสดงข้อมูลตามแนวนอนจากซ้ายไปขวาได้ ทำให้ยืดหยุ่นต่อการปรับใช้กับหน้าจอขนาดใหญ่   เรามีความสงสัยขึ้นมาว่า จะเป็นไปได้ไหมที่เราจะสร้าง UICollectionView ซ้อนใน UICollectionView แต่ยังคงสามารถจะเซต delegate และ datasource ให้กับ UICollectionView ได้เหมือนเดิมและยังสามารถทำงานได้ปกติตามหลักการใช้งานของ UICollectionView ? วันนี้เราจะมาหาคำตอบให้คลายกับความสงสัยนี้กัน  

iOS Tutorial – Begin with swift ( day 9 )

Initialization คือกระบวนการเตรียม instance ให้พร้อมใช้ของ class, structure หรือ enumeration กระบวนการนี้รวมไปถึง การกำหนดค่าเริ่มต้น properties ของ instance ไปถึงการเตรียมความพร้อมของค่าต่างๆ ที่จำเป็นก่อนที่ instance นี้จะพร้อมสำหรับใช้งาน Initializers คือ method ที่ถูกเรียกเพื่อจะสร้าง instance ใหม่ เราประกาศโดยใช้คีย์เวิรด์ init ตัวอย่างการใช้ struct TrackInfo{ var currentTime:Int init(){ currentTime = 0 } } จากตัวอย่าง structure มี properties อยู่ตัวเดียวคือ currentTime และมี initializer โดยไม่รับ parameter ใดๆ เข้ามาเลย โดยภายในจะทำหน้าที่เซตค่าตั้งต้นให้กับตัวแปร currentTime แต่เราสามารถจะเซตค่าตั้งต้นให้กับตัวแปร currentTime จากวิธีเบื้องต้น หรือเซตค่าตั้งต้นให้ตัวแปรนี้จากตอนประกาศตัวแปรเลยก็ได้ ดังนี้ Read more about iOS Tutorial – Begin with swift ( day 9 )[…]