break และ continue ในลูป for by dekunderkover
Apr0
วิธีการใช้เจ้าสองตัวเนี๊ยะ จะใช้ทีต้องไป google ที เฮ้อ ขอเอามาไว้ตรงนี้เลยละกัน เผื่อคนที่ยังไม่รู้ด้วยนะ
break กับ continue ใน for ได้ด้วยนะเธอว์ นอกจากที่เราเห็นใช้กันใน switch case แล้ว
มาดูกันว่าใช้งานยังไง
เริ่มต้นด้วยการใช้ break ในลูป for ก่อนเลย
for(var i:int=1; i<23; i+=4){
if(i==13){
break;
}
trace(i);
}
ค่า output ที่ออกมาจะเป็น 1 5 9 แล้วไม่มีอะไรออกมาอีกแล้ว
เนื่องจากการใช้ break จะทำให้เราหลุดออกจากลูป for นี้ไปเลย
อ่ะ มาดู continue ในลูป for กันบ้าง
for(var i:int=1; i<23; i+=4){
if(i==13){
continue;
}
trace(i);
}
ค่า output จะออกมาเป็น 1 5 9 17 21
เนื่องจากการใช้ continue จะทำให้ข้ามบรรทัด trace(i); กระโดดขึ้นไปวนลูป for อีกที
อยากได้ code เก่ากลับคืนมา~ ทำไงดี? by dekunderkover
Feb0
ในโปรแกรม Flash Builder เนี่ย แอบมีฟีเจอร์เด็ดๆซ่อนอยู่นะ ซึ่งหลายๆคนไม่รู้
หลายครั้ง หลายครา แก้โค้ดไป แก้โค้ดมา เฮ้ย ไอ้ของที่เคยเขียนเมื่อคราวที่แล้วมันก็ใช้ได้นี่นา แต่…ลบไปแล้ว อร๊ากกกกกก
โชคดีที่โปรแกรม Flash Builder มีฟีเจอร์นี้ทำให้เรารอดชีวิตมาได้ นั่นคือ local history
โปรแกรมเก็บโค้ดเวอร์ชั่นเก่าๆให้เราด้วย ไหนๆ ทำไงอ่ะ
คลิ๊กขวาบนหน้าจอโค้ดเราเลย –> Compare With –> Local History…
เดี๋ยวไม่เห็นภาพ อ่ะ

พอเปิดแล้วแท็บนี้ก็จะขึ้นมา

ทีนี้โปรแกรมจะแบ่งหน้าจอพร้อมกับเทียบโค้ดปัจจุบันกับโค้ดในอดีตที่เราเลือกมาให้เห็นชัดๆเลย
ขอบพระคุณ Flash Builder ที่มีฟีเจอร์นี้ให้โปรแกรมเมอร์ตัวน้อยๆได้ย้อนเวลากลับไปมองหาอดีต
กราบบบ m(_ _)m
ความแตกต่างของลูป for กับ for each by dekunderkover
Jan0
สำหรับตอนนี้จะไม่พูดถึงลูป for ธรรมดานะ (เราคิดว่าคุณรู้แล้ว)
มาเริ่มกันด้วยการสร้าง object ขึ้นมาก่อน
var obj:Object = {'id':'1','name':'myname','description':'descccc','image_name':'name/1.png','exp_max':'7'}
เราจะใช้ข้อมูลนี้กันนะ
อธิบายสิ่งที่อยู่ใน obj กันก่อน
‘id’:'1′ คือ คีย์ที่ชื่อ id เก็บข้อมูล 1 อยู่
มาเริ่มต้นที่ for( in ) กันก่อน
for(var k:String in obj){
trace(k);
}
ได้ key ออกมา คือ id name description image_name และ exp_max
มาดูกันต่อที่ for each( in )
for each(var d:String in obj){
trace(d);
}
ได้ data ออกมา คือ 1 myname descccc name/1.png และ 7
นำไปใช้กันให้ถูกนะคะ
มาทำความรู้จักกับ RSLs (Runtime Shared Libraries) by dekunderkover
Jan0
RSLs (Runtime Shared Libraries) พูดกันง่ายๆคือการแชร์ library ที่ใช้ในแอพเป็นส่วนกลางในระหว่างการทำงาน จะช่วยลดขนาดของแอพที่โหลดขึ้นมา
ลองดูรูปง่ายๆกันก่อน

เปรียบเทียบระหว่างการใช้ rsls และไม่ใช้
จากรูปจะเห็นได้ชัดว่า ถ้าไม่ได้ใช้ RSLs แอพแต่ละตัวจะเก็บ library ไว้ในตัวโปรแกรมของแต่ละตัวกันเอง ซึ่งเมื่อรันโปรแกรมแล้ว จะทำให้เกิดการโหลด library ที่ซ้ำๆกันออกมา
ส่วนภาพขวาคือการที่ใช้ RSLs ในการแยก library ออกมา เมื่อรันแอพแต่ละตัว ก็จะไม่มีการโหลดซ้ำของ library อีก
ความเหมาะสมของโปรแกรมที่จะใช้ RSLs คือ
1. เป็นแอพที่มีมินิเกมอยู่ข้างในโดยแยกตัว swf ออกจากกัน
2. ใช้ library เดียวกัน เช่น รูปภาพ ตัวละครในเกม
3. แอพที่มีขนาดใหญ่และต้องการที่จะลดขนาด เพื่อความสะดวกแก่คนที่เข้ามาใช้แอพ
การใช้ List ใน Flex by dekunderkover
Nov0
เราจะมาพูดถึงส่วนประกอบของ List ใน Flex
สิ่งที่พูดถึงนี้อยู่ใน spark.components.list
แท็ก list เวลาเรียกใช้คือ <s> </s> แบบโค้ดตัวอย่างนี้
<s:List x="295" y="207" width="412" height="112" id="prtList1" dataProvider="{usedArr1}" itemRenderer="components.partCustomComponent" />
</s:List>
x, y : จุด x y ที่เราจะวาง list ลงไป
width, height : ความกว้าง ความสูง ของ list ที่เราสร้าง
dataProvider : ข้อมูลที่จะใส่ลงใน list
itemRenderer : component แต่ละตัวใน list
ลงรายละเอียดกันอีกนิด
ข้อมูลที่จะใส่ใน dataProvider จะเป็นข้อมูลแบบ array เช่น
var usedArr:Array =[{"friend_id":1234,"nick":"Paiboon","level":10,"exp":2},
{”friend_id”:5678,”nick”:”Ziah”,”level”:99,”exp”:999999}];
จะมีข้อมูลคือ friend_id เป็น 1234, nick เป็น Paiboon, level เป็น 10, exp เป็น 2
itemRenderer จะเป็นคลาสที่สร้าง component แต่ละตัวออกมา โดยใช้ข้อมูลจาก dataProvider ทีละตัว
public function init():void {
str = data.nick;
exp = data.exp;
level = data.level;
id = “id: “+data.friend_id;
}
data คือข้อมูลจากในอาร์เรย์ . ด้วยชื่อของข้อมูลที่ต้องการ
แล้วจึงนำไปใส่
<s:Label text="name: {str}" y="60" />
<s:Label text=”exp: {exp}” y=”70″ />
<s:Label text=”level: {level}” y=”80″ />
มาดูให้เห็นภาพ (ไม่ตรงตามโค้ดนะจ๊ะ)
หลังจากข้อมูลหนึ่งตัวเข้า itemRenderer แล้ว จะออกมาเป็นลักษณะแบบนี้

พอใช้ข้อมูลทุกตัว ก็จะออกมาเป็นแบบนี้ ![]()

