PracticU

UITextField And String Unicode scalrs

בלי כתוביותעם כתוביות
PracticU › קורס פיתוח אפליקציות - לאייפון iPhone iOS - ב-Swift-Xcode › UITextField And String Unicode scalrs
מילון מושגים:
מחרוזת - סוג נתונים שמייצג רצף של תווים, כלומר טקסט, ומשמש לאחסון מילים, משפטים או כל רצף סימנים.
Unicode - תקן קידוד תווים אוניברסלי שמכסה את כתבי השפות בעולם, ומאפשר לייצג כמעט כל תו.
כפתור - רכיב בממשק המשתמש שהמשתמש לוחץ עליו כדי להפעיל פעולה, כמו שליחת טופס או מעבר לדף אחר.
גופן - העיצוב הגרפי של האותיות והתווים המוצגים בטקסט, הכולל צורה, סגנון וגודל.
פונקציה - קטע קוד בעל שם שמבצע משימה מוגדרת, מקבל ערכי קלט (פרמטרים) ויכול להחזיר תוצאה. מאפשרת לארגן קוד ולהשתמש בו שוב.

UITextField And String Unicode scalrs
בשיעור בונים אפליקציית מחשבון אהבה פשוטה: מזינים שני שמות, לוחצים על כפתור חישוב, והאפליקציה מציגה את מידת ההתאמה באחוזים. התרגיל מציג שדות טקסט, Unicode scalars והמרה של תווים למספרים.
עיצוב המסך
- שני שדות טקסט, כל אחד עם תווית מתחתיו, וכפתור במרכז. האילוצים הם 32 נקודות מכל כיוון, והכפתור ממורכז.
- התווית הראשונה מכילה לב, בגודל פונט 36. שדות הטקסט מכילים טקסט placeholder.
חיבורים
- Outlet לשדה הטקסט הראשון, Outlet לשדה השני, ו-Outlet לתווית התוצאה.
- Action של הכפתור מסוג UIButton, שמופעל בלחיצה על "חישוב".
החישוב
1. בדיקת קלט: בודקים עם guard ששני השדות אינם ריקים. אם אחד מהם ריק, הפונקציה מסתיימת בלי חישוב.
2. ערכים של תווים: לכל תו יש ערך מספרי בטבלת Unicode. התכונה value של התו מחזירה UInt32, שממירים ל-Int לפני הסכימה.
3. נרמול: ממירים את השמות לאותיות קטנות לפני החישוב, כדי ששם שנכתב באותיות גדולות יתקבל באותה תוצאה כמו שם שנכתב באותיות קטנות.
4. סכימה: סוכמים את הערכים של כל התווים בשני השמות, ומחשבים את שארית החלוקה ב-101. השארית נמצאת בין 0 ל-100, וזה טווח האחוזים.
דוגמה שמוצגת בשיעור: "אבא" ו"סבא" נותנים 93 אחוז התאמה. המרצה מסביר שהתוצאה אינה מדעית והיא נועדה להמחשה בלבד.
הסיכום: שדות טקסט מספקים קלט, Unicode scalars מספקים ערכים מספריים לתווים, ושארית החלוקה ב-101 ממירה את הסכום לטווח של אחוזים.
השיעור הבא בקורס: UISlider And UIColor

פרקי ההרצאה: UITextField And String Unicode scalrs

  1. 00:00

    מבוא: מחשבון אהבה באפליקציה

  2. 01:47

    יצירת פרויקט חדש ותכנון הממשק

  3. 03:10

    אילוצים ליישור שדות הטקסט

  4. 04:34

    הוספת לב לטקסט והגדלת הפונט

  5. 06:34

    יצירת Outlets ו-Action לכפתור

  6. 08:11

    בדיקת שני השמות לפני החישוב

  7. 09:26

    המרת תווים למספרים לפי Unicode

  8. 10:45

    פונקציה שמחזירה סכום Unicode

תמלול ההרצאה: UITextField And String Unicode scalrs

הטקסט המלא של הדקות הראשונות בהרצאה «UITextField And String Unicode scalrs» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.

  1. 00:02

    שלום וברוכים הבאים אנחנו רוצים להמשיך לשחק עם פקדים מוכרים ב-IOS וללמוד דברים על הדרך בפרויקטים מתגלגלים היום אנחנו ננסה לייצר מחשבון אהבה עכשיו בואו נראה מה זה מחשבון אהבה מחשבון אהבה הוא בסך הכל אפליקציה די דומה לאורקל באיזושהי צורה בכך שיש לנו פה אילו שתי שמות וכשאנחנו לוחצים על הכפתור של קלקילייט הוא

  2. 00:27

    מחשב את מידת ההתאמה בין המיועדים למשל אנחנו יכולים לבדוק עד כמה בוא נאמר משה אוהב את דפנה ואנחנו נלחץ פה על חישוב ומסתבר שמשה לא כל כך מחבב את דפנה חברים וחברות אז לא כדאי להם להתחתן בוא נראה איך אנחנו רוצים לעשות את הדבר הזה בסוויפט באמולטור שלנו אנחנו נרצה לעצב את זה בצורה קצת יותר חיננית מאשר האתר הזה שהוא מאוד מאוד מצליח מרביץ פה פרסומות בלי

  3. 01:04

    די אז אנחנו נרצה לעשות את זה באפליקציה מה דעתכם יש לנו פה טקסט פילד עבור השם הראשון אנחנו יכולים לשים לייבל עם איזשהו לייב או תמונה ולייבל עבור השם השני כשלוחצים על הכפתור אנחנו נחשב את מידת ההתאמה בסדר נניח אם מישהו יבדוק פה עד כמה משה אוהבת

  4. 01:25

    דפנה למשל ויחשב את מידת ההתאמה אז הוא יגלה שמשה מאוד מאוד אוהבת דפנה אצלנו באפליקציה אוקיי בואו נראה מה קורה, הופ עם סימן קריאה לא כל כך כי דפנה הצעקנית פחות בסדר אז בואו תנסו אתם לעצב פה את האפליקציה וניפגש בעוד מספר דקות אחרי שתסיימו ואנחנו נציג כמובן פתרון אז נתראה אני שמח שחזרתם בואו נלך לאקסקוד

  5. 01:52

    ונתחיל לעבוד פה על פתרון באקסקוד אני נייצר פרויקט חדש לשיעור אז פייל ניו פרויקט סינגל וי אפליקיישן עדיין אנחנו נקרא לפרויקט שלנו לא אחר מאשר love-calculator ונבחר בכל הדיפרונס הרגילים בואו נתקדם אני בספרייה שלי כמובן אצור אותו עכשיו מבחינת עיצוב מה שאני הגעתי אליו זה היה פשוט טקסט פילד לייבל טקסט פילד

  6. 02:24

    לייבל וכאן יש פה כפתור אז אני הולך ל-object library ואני אעשה בדיוק את מה שאמרתי אז יש לי טקסט פילד אני סתם זורק אותו כרגע לייבל אני אניח אותו פה מתחת, עוד טקסט פילד ועוד לייבל.

  7. 02:59

    אז זאת מידת ההתאמה, כן, זה יהיה פה. ויש לנו גם כפתור, שהכפתור הוא יהיה במרכז. אוקיי, אני אזרוק אותו פה באמצע. בוא נתחיל לעבוד. הפקד הראשון, הטקסט פילד הזה, אנחנו ניתן לו את היוצאים הסטנדרטיים של 32 מכל הכיוונים.

  8. 03:21

    הלייבל צריך להיות מתחתיו, בוא נסדר קצת לשטח. בוא נאמר גם כן במרחק של 32, אנחנו נרצה שהלייבל הטקסט שלו יהיה במרכז ואתם יודעים כבר איך לעשות את זה אני הולך לאטריביוטס וממרכז עכשיו בוא נזיז את אלה קצת עכשיו הטקסט וילד השני

  9. 03:51

    נשים אותו פה מתחת ושוב פעם נעשה 32 לכל התוכנית יפה אז זה השם הראשון הלב השם השני עכשיו מידת ההתאמה בוא נשים נניח כאן אוקיי בצד ימין ולמטה סליחה אני אוסיף פה שתי אילוצים נניח 32 32 מימין ומלמטה והכפתור כפי שאמרנו קודם במרכז אז אני הולך לאליימנט קונסטרנט ואני לוחץ פה כדי להוסיף גם אילוץ רווקי וגם אנכי יפה די דומה למה

  10. 04:26

    שרציתי בוא נתחיל בלייבל איך אנחנו משנים פה את הטקסט ללב במקום הטקסט הזה מסתבר שאם אנחנו רוחצים קונטרול קומנד ורווח פתח לי באקסקוד אוסף נחמד של אמוג'יס וסמיילים וכן הלאה וכאן אנחנו יכולים לחפש לב ומכאן לקחתי את הלב שראיתם קודם באפיון

  11. 04:51

    אז אני אנסה לשים את הלב פה בטקסט על ידי לחיצה כפולה נניח אוקיי ואני אסגור את החלון הזה כי אני כבר לא כל כך צריך אותו יותר זה מה שיצא אני גם ארצה כמובן להגדיל את הפונט כדי שזה ייראה יותר יפה אבל אני אגדיר את הפונט בצורה דומה בשלושת הדברים האלה ביחד גם בטקסט פילדים וגם בלייבל

  12. 05:18

    רגע בוא נתחיל באלה בשניהם נעשה פשוט פונט יותר גדול או קצת גדול מדי נלך על 36 וגם בדבר הזה בלייבל נלך על 36 עכשיו בשם אני רוצה כמובן placeholder שם ראשון אתם רוצים ליישר לימין כאילו שזה בעברית שם שני אשר לימי מידת ההתאמה אז בואו נרשום את זה

  13. 06:00

    פה מידת אמה והכפתור שלנו חשב יפה אז זה הייצוג בעצם של האפליקציה שלנו כמו שאתם רואים זה מאוד מאוד דומה כמובן שפה זה נראה יותר יפה בגלל שזה פשוט באייפון X אבל זה בדיוק הייצוג שעשיתי קודם אחד לאחד יפה עכשיו בואו נתקדם רגע לגבי התכנות מה אתם אומרים אני חושב שכבר צברתם מספיק ניסיון

  14. 06:35

    ואתם יודעים את הפתרון פתרון יהיה לייצר אאוטלטים ואקשנים נכון בוא נייצר אאוטלטים לארבעת הפקדים הללו ואקשן עבור הכפתור ואחר כך נראה אם אנחנו יכולים לעשות את זה בדרכים נוספות כרגע כל הפרופרטיס שלי זה כל הפקדים כמעט נכון אז בוא נייצר את זה כאן איך עשינו את זה פתחנו את החישוקיים נכון זוכרים

  15. 06:59

    יש לי את הסטורי בורד ואז אני בא לוחץ על המצב הזה האסיסטנט אדיטור שפותח לי את זה אני כמובן אלך טקסט פיד לראשון אגרו אאוטלט אני אקרא לזה name 1 אנחנו נלך ללייבל את הלייבל אני לא כל כך צריך אני אלך אז לשם השני ואני אגרור אני אקרא לזה name 2 אני אלך למידת ההתאמה זה יהיה הרזלט לייבל שלי אני אקרא לו רזלט לייבל אם כן ולגבי כפתור הקלקיולייט שלנו

  16. 07:34

    אנחנו רוצים ממנו שיעשה לנו אקשן שיודיע לנו מתי לחצו על הכפתור יפה עכשיו בוא נקרא לזה פשוט calculate אלה הדברים הטייפ של הכפתור רוצים שהוא יהיה ua-bottom ולא סתם לקבל כל אובייקט רק עבור כפתורים הפעולה הזאת תספיק ובעצם די סגרתי פה את העניין בסדר הוצאתי אוטלטים לכל הדברים שמעניינים אותי

  17. 08:01

    עכשיו אני רק צריך למצוא איזשהו אלגוריתם מעניין לחשב את המידת התאמה בין בני הזוג המיועדים אז בואו נצא לדרך אני הולך לview controller שלי ואנחנו נתחיל פה לעבוד טיפה כשאנחנו רוצים לחשב אז דבר ראשון שסביר להניח שאנחנו נעשה אנחנו ניקח את השם הראשון ואת השם השני ואם הם לא קיימים אני לא מחשב כלום אז אני אעשה דבר כזה אני אעשה

  18. 08:27

    guard כדי לוודא ש-name 1 יש לו טקסט וגם name 2 יש לו גם טקסט אלס צא החוצה לא נעבוד בשבילכם יותר בסדר זה אחד כעת בואו נוציא את הטקסטים של השמות כסטרינג אז אני עכשיו יכול לומר let text1 שזה השם הראשון שווה ל-name1.txt ואנחנו מקבלים פה אופצ'ונל ואני יודע בוודאות שיש שם טקסט הרגע בדקתי ועל כן אנחנו נעשה את זה כ-explicitly-unrop אותו דבר עם הטקסט פילד השני

  19. 09:07

    אנחנו פשוט ניקח את הטקסט מהטקסט פילד name2.txt ואנחנו יודעים בוודאות שיש שם טקסט ועל כן אנחנו explicitly-unrop לאופצ'ונל בסדר עכשיו דיברנו על הדברים האלה, אתם מוזמנים כמובן להתייעץ בסרטונים הקודמים כדי להיזכר.

  20. 09:26

    הנה יש לי את שתי השמות, שתי השמות של המיועדים. עכשיו, איך אנחנו נעשה את החישוב, ואיזה אלגוריתם אתם מכירים שיכול להמיר טקסטים למספרים או לחישובים?

  21. 09:40

    אחד הדרכים לעשות את זה תהיה להשתמש בידע מאוד מאוד חשוב שאתם צריכים להכיר, ולכל אות יש בעצם מקום בטבלת יוניקורד בסדר אז אם אתם מחפשים רגע בגוגל בוא נחפש וזה באמת באמת חשוב כי בני אדם למדו איך לייצג כל דבר בעזרת מספרים וטבלת יוניקורד היא ככה אחד הדברים שמאפשרים לייצג אותיות כמספר או אותיות כמספרים אז בוא נסתכל לדוגמה נניח איזושהי אות מסוימת

  22. 10:16

    מקבלת קוד בסדר והקוד הזה הוא פשוט מספר רץ ואנחנו יכולים לראות שיש לכל מיני ציורים דרך אגב מספרים. יפה? אני גם חושב.

  23. 10:29

    עכשיו יש פה את החטיבה העברית כמובן יש פה המון המון דברים ביוניקוד המון מספרים ואנחנו ככה נוכל לקחת כל עוד כל תו למעשה ולחשב איזשהו מספר ממנה ומפה נוכל לצאת לאילו אלגוריתמים לגבי חישוב בהתחשב באותיות של השמות כמו בגימטריה למעשה נכון בגימטריה כל עוד בעברית מקבלת ערך מספרי יפה אז

  24. 10:53

    בואו נעשה לעצמנו איזושהי פונקציה כזאת פאנקשן שבוא נגיד שהיא תחזיר לי את הסכום של יוניקוד בסדר אנחנו נראה איך עושים את זה כמובן הפעולה הזאת תקבל סטרינג בוא נאמר לא אכפת לי איך קוראים לו אז אני אגיד לא אכפת לי והיא מקבלת סטרינג שאותו אנחנו רוצים לבדוק הפעולה הזאת תצטרך להחזיר בסופו של דבר מספר עוד מעט נעשה פה return type

  25. 11:22

    אולי אפילו עכשיו בוא נעשה ככה ב-value או רזלט שווה לאפס ובוא נחזיר את הרזלט. אוקיי, אז בעצם אני מחזיר ערך, מחזיר מספר, השאלה מה האלגוריתם.

  26. 11:39

    האלגוריתם שלנו אומר את הדבר הבא, אנחנו נלמד כרגע שלכל סטרינג בסוויף יש לו את ה-unicode scaleouts שלו, כלומר יש לנו בעצם מבנה נתונים שמייצג קולקשן של כל האותיות שלו כבודדות, ועל הדבר הזה אנחנו נרצה לעשות for each, אוקיי? אז בואו נראה איך נעשה את זה.

  27. 12:03

    בואו נאמר עבור כל char

לקורס המלא: קורס פיתוח אפליקציות לאייפון

ההרצאה הקודמת: UISlider And How to change fonts in a UILabel

ההרצאה הבאה: UISlider And UIColor

הרצאות קשורות מקורסים אחרים

  • מה זה Unicode ו-ASCII ?
  • Java String - חלק 1
  • String Input
  • String Resource

קורסים נוספים במסלול

  • קורס יסודות התכנות - שפת JAVA - קורס ג'אווה למתחילים
  • קורס פיתוח אפליקציות - לאנדרואיד - Android - ב-JAVA
  • קורס פלאטר - Flutter - שפת DART של גוגל למובייל - פיתוח אפליקציות לאנדרואיד ואייפון
  • קורס PhoneGap - פיתוח אפליקציות לאנדרואיד ואייפון