הטמעת מצב כהה עם טוקנים סמנטיים ותאימות ל-WCAG

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

פיתוח ותמיכה בכל סוגי היישומים הניידים:

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

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

השירותים שאנו מציעים
מציג 1 מתוך 1כל 1734 השירותים
הטמעת מצב כהה עם טוקנים סמנטיים ותאימות ל-WCAG
בינוני
~2-3 ימים

הכישורים שלנו:

שאלות נפוצות

העבודות האחרונות

  • פיתוח אפליקציית מובייל עבור FEEDME
    פיתוח אפליקציית מובייל עבור FEEDME
    971
  • פיתוח אפליקציית מובייל עבור XOOMER
    פיתוח אפליקציית מובייל עבור XOOMER
    869
  • פיתוח אפליקציית מובייל עבור RHL
    פיתוח אפליקציית מובייל עבור RHL
    1289
  • פיתוח אפליקציית מובייל עבור ZIPPY
    פיתוח אפליקציית מובייל עבור ZIPPY
    1143
  • פיתוח אפליקציית מובייל עבור Affhome
    פיתוח אפליקציית מובייל עבור Affhome
    1076
  • פיתוח אפליקציית מובייל עבור חברת FLAVORS
    פיתוח אפליקציית מובייל עבור חברת FLAVORS
    677

לאחר עדכון iOS לנושא כהה, חצי מהכפתורים הופכים לבלתי קריאים, ובאנדרואיד האפליקציה קורסת בעת מעבר בין נושאים? זהו מצב מוכר אם הצבעים מקודדים בצורה קשיחה. אנו מיישמים נושא כהה עם מעבר אוטומטי, טוקנים סמנטיים וניגודיות WCAG AA. הניסיון שלנו מראה שיישום נכון מגדיל את שימור המשתמשים ב-20–30%, בעוד שטעויות בנושא הכהה הורסות את חוויית האפליקציה.

איך לא לעשות את זה: היפוך וצבעים מקודדים

הטעות הראשונה והיקרה ביותר היא שימוש בצבעים מקודדים במקום בטוקנים סמנטיים. Color.white, #FFFFFF, UIColor(red:1 green:1 blue:1 alpha:1) — כל אלה נשברים בעת מעבר בין נושאים. תיקון מאוחר יותר פירושו שכתוב של כל רכיבי הממשק.

הגישה הנכונה היא טוקנים סמנטיים: background.primary, text.secondary, surface.elevated, accent.default. ב-iOS אלה UIColor.systemBackground, UIColor.label, UIColor.secondaryLabel וצבעים מותאמים אישית דרך Asset Catalog עם גרסאות Light ו-Dark. באנדרואיד — Material Design 3 עם colorScheme עד MaterialTheme.colorScheme.surface, onSurface, surfaceVariant. ב-Flutter: ThemeData.light() ו-ThemeData.dark() עם סט מלא של ColorScheme, מעבר דרך MaterialApp(themeMode: ...). ב-React Native: ה-hook useColorScheme() מהליבה + Appearance.getColorScheme() לאתחול.

למה טוקנים סמנטיים הם הגישה הנכונה היחידה?

טוקנים סמנטיים מאפשרים לשנות את הנושא באופן מרכזי ללא עריכה של כל מסך. השוואה: עם קידוד קשיח, שינוי צבע הרקע דורש חיפוש והחלפה של 50+ מופעים. עם טוקנים, משנים את הערך של משתנה אחד. זה מהיר פי 5 ומבטל שגיאות. לפי Apple HIG, שימוש בצבעי מערכת וטוקנים סמנטיים הוא חובה למעבר ביקורת (סעיף 4.2).

גישה זמן לשינוי צבע סיכון לשגיאות גמישות
קידוד קשיח 30–60 דקות (50+ עריכות) גבוה נמוכה
טוקנים סמנטיים 2–5 דקות נמוך גבוהה

אילו כללים יש לעקוב אחריהם עבור פלטה כהה?

נושא כהה הוא לא רק רקע כהה. הנה הכללים המרכזיים שמופרים לרוב.

הגבהה באמצעות הבהרה, לא צללים

ב-Material Design 3, משטחים ברמות z-index שונות בנושא כהה נבדלים בבהירות: ככל שגבוה יותר, כך בהיר יותר. surface → surfaceContainer → surfaceContainerHigh. צללים כמעט בלתי נראים בנושא כהה — הם מוחלפים בהפרדה טונאלית.

ניגודיות טקסט

WCAG AA דורש לפחות 4.5:1 לטקסט רגיל. לבן #FFFFFF על כהה #121212 = 18.1:1 — גבוה מדי, מאמץ את העיניים. אופטימלי #E0E0E0 על #121212 = 14.7:1. Google ממליצה על #FFFFFF עם אטימות של 87% לטקסט ראשי.

סוג טקסט ניגודיות מינימלית (WCAG AA) יעד בנושא כהה
טקסט רגיל 4.5:1 14:1
טקסט גדול (>=18pt) 3:1 7:1
אלמנטים מודגשים 3:1 מותאם

צבע מודגש

צבעים מודגשים רבים בנושא כהה דורשים רוויה מופחתת והבהרה קלה. כחול בהיר #2196F3 על רקע כהה רוטט וגורם לאי נוחות. #90CAF9 הוא הגרסה הנכונה לנושא כהה.

תמונות ואיורים

תמונות לא משתנות. איורים עם רקע לבן הם בעיה. פתרון: איורי SVG עם רקע שקוף וצבעים אדפטיביים דרך currentColor.

מעבר דינמי

iOS מגרסה 13 תומך ב-traitCollectionDidChange — המערכת מודיעה אוטומטית על שינוי נושא. SwiftUI מצייר מחדש עם @Environment(\.colorScheme). UIKit דורש override func traitCollectionDidChange מפורש. אנדרואיד: AppCompatDelegate.setDefaultNightMode() למעבר תוכנתי. נושא DayNight ב-styles.xml. Activity מופעל מחדש בעת שינוי נושא — יש לשמור מצב דרך ViewModel או onSaveInstanceState.

מקרה קצה חשוב: המשתמש משנה את הנושא בהגדרות המערכת בזמן שהאפליקציה ברקע. כשחוזרים לחזית, האפליקציה חייבת להחיל את הנושא החדש ללא הבהוב מורגש. באנדרואיד זה recreate() activity או configChanges: uiMode במניפסט עם טיפול ידני.

בדיקת נושא כהה

שלוש רמות: Figma (כל הרכיבים עם גרסאות בהיר/כהה דרך Figma Variables), סימולטור/אמולטור (מעבר דרך הגדרות מהירות), מכשיר פיזי במצב OLED (iPhone 12+, Samsung Galaxy) — בדיקת שחור "טהור", היעדר אפקט הילה סביב אלמנטים בהירים. כלים: Xcode Accessibility Inspector לבדיקת ניגודיות, Android Accessibility Scanner. בדקו את כל המסכים, כל המודאלים, כל ההתראות — הם משתמשים לרוב בצבעי מערכת ונשברים ראשונים.

מה כלול בעבודה

  • ביקורת קוד קיים (איתור כל הצבעים המקודדים)
  • המרת צבעים לטוקנים סמנטיים
  • יצירת פלטה כהה במערכת העיצוב (Figma Variables + קוד)
  • יישום מעבר נושא דינמי
  • בדיקת ניגודיות וקריאות (WCAG AA)
  • תיעוד שימוש בטוקנים ותמיכה במהלך השחרור

לוחות זמנים משוערים

יישום לוח זמנים
חדש, טוקנים מההתחלה 2–3 ימים
קיים, דורש רפקטורינג צבעים 3–5 ימים
מורכב, רכיבים מותאמים רבים 5–7 ימים

העלות מחושבת באופן אישי לאחר ביקורת הפרויקט. אם אתם רוצים ליישם נושא כהה עם אחריות לאיכות, צרו קשר — נעריך את הפרויקט שלכם. מעל 5 שנות ניסיון ו-50+ פרויקטים מיושמים בפיתוח מובייל. הזמינו יישום נושא כהה וקבלו ייעוץ.

פרטי יישום נוספים במעבר לטוקנים סמנטיים, אל תשכחו אלמנטים מערכתיים: שורת סטטוס, מקלדת, התראות מערכת. ב-iOS השתמשו ב-`UIStatusBarStyle`, באנדרואיד — `View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR`. למקלדת ב-iOS 13+ קיים `overrideUserInterfaceStyle`.