|
![]() |
# 1 |
חבר על
|
שאלה בנוגע ל XML מול AS
שאלה קצרה בנוגע ל Action Script לאלו שמבינים...
לאחרונה התחלתי ללמוד AS3 כדי לסיים את התיק עבודות שלי. נתקלתי בבעיה כשהתחלתי לנסות לטעון קובץ XML לתוכנית. הקובץ נטען בצורה מצויינת, השתמשתי בפונקציה הבאה: קוד:
function getXML(xmlData:XML):void { projectInfo = xmlData.projects.project.info; projectLink = xmlData.projects.project.link; projectThumb = xmlData.projects.project.thumb_path; projectImage = xmlData.projects.project.image_path; projectsNum = projectThumb.length(); } החלק האחרון - projectsNum = projectThumb.length(); אמור כמובן להביא לי את כמות הפרוייקטים שיש לי (לפי כמות ה THUMBים שלי). כשאני מבצע trace למשתנה - הוא נותן לי את התוצאה המדויקת, אבל כשאני מנסה להשתמש במשתנה בפריימ אחר (או בכל מקום מחוץ לפונקציה) זה מביא לי ערך NaN - בקיצור, לא עוזר. קצת רקע למה אני מנסה לעשות: יש לי בקובץ XML רשימת פרוייקטים אני מציג אותם בעזרת לולאת FOR ב AS אני כמובן רוצה שהלולאה תחזור על עצמה כמספר הפרוייקטים שרשומים לי בקובץ ה XML. אני לא כל כך מבין איפה אני טועה... מישהו יכול לעזור? תודה, יקיר ![]()
__________________
![]() |
![]() |
![]() |
# 2 |
משתמש - היכל התהילה
|
לא יצא לי להתעסק בAS אבל זה נראה בעיה שהמשתנה הוא משתנה מקומי(בתוך הפונקציה)
כך שהוא לא קיים מחוץ לה. אז או שתעשה שהיא מחזירה את הערך r קוד:
eturn projectsNum
__________________
קו ישר, כי אפשר גם אחרת |
![]() |
![]() |
# 3 |
חבר בקהילה
|
הבעיה שלך כנראה נובעת מכך שאתה עושה את הקוד בפריימים, במקום בקובץ AS שמקושר לDocument Path.
להיות יותר ספציפי, כנראה משהוא בסדר של הקוד ( כי הרי יש לך קודים בכמה פריימים ), וכשזה "מנגן" את הפריים / קוד, זה דופק לך את המשתנה. לשים את הקוד במקור חיצוני זה הדרך המקצועית לעשות את הדברים, אני לא מציע להשתמש בקוד בפריימים אלא אם זה משהוא ממש קטן. |
![]() |
![]() |
# 4 | |
חבר על
|
ציטוט:
ובכל מקרה, גם כשאני ממקם את הפונקציה בדיוק באותו הפריימ שבוא אני צריך להשתמש בה זה עדין לא מזהה נותן ערך למשתנה. בניה, לגבי משתנה מקומי\גלובאלי אני לא בטוח איך אני מגדיר משתנה כגלובאלי מה גם שאני לא בטוח שיש בזה צורך. יש לי קובץ מקור אם דוגמה זהה שבה לא נעשה שימוש במשתנה מיוחד, למעשה הדוגמה שיש לי תואמת את מה שאני צריך ואף על פי שאני מנסה לבצע את הדברים אחד לאחד, עדין אצלי הדברים לא עובדים ובקובץ מקור לדוגמה שיש לי הם עובדים טוב. לגבי הערך return ניסיתי להשתמש בזה, לצערי ללא הצלחה. תודה לשניכם, עוד הצעות?
__________________
![]() |
|
![]() |
![]() |
# 5 |
חבר בקהילה
|
טוב אם זה לא משהוא שדופק את זה, אז תראה את הפונקציה שלא עובדת.
אמרת שtrace עובד, אבל זה כנראה הדרך או הפונקציה בה אתה משתמש. מה שאני מצליח לחשוב כרגע זה שאתה משתמש בפונקציה שמחפשת משהוא אחר ממה שיש. אולי תנסה להגדיר את projectsnum בתור number. |
![]() |
![]() |
חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים) | |
כלים לאשכול | |
תצורת הצגה | |
|
|