בוחר אמוג'י

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

איור 1. חלונית לבחירת אמוג'י

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

תכונות

התכונות של החלונית לבחירת אמוג'י:

אמוג'י עדכניים

אמוג'י חדשים שפורסמו נכללים באופן סלקטיבי בחלונית לבחירת אמוג'י. ספריית חלונית בחירת האמוג'י תואמת למגוון גרסאות ומכשירים של Android.

וריאציות קבועות

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

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

סוגי אמוג'י
איור 2. וריאציות של אמוג'י.

אמוג'י שהיו בשימוש לאחרונה

אמוג'י שהיו בשימוש לאחרונה
איור 3. אמוג'י שהיו בשימוש לאחרונה.

ה-RecentEmojiProvider אחראי על הצגת האמוג'י בקטגוריה בשימוש לאחרונה. בספרייה יש ספק ברירת מחדל של אמוג'י שהיו בשימוש לאחרונה, שמתאים לתרחיש לדוגמה הנפוץ ביותר:

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

אם פעולת ברירת המחדל הזו מספיקה, אתם לא צריכים להשתמש ב-setRecentEmojiProvider().

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

  • אתם רוצים לשמור אמוג'י שונים שנבחרו לכל חשבון משתמש.
  • אתם רוצים להשתמש במאגר נתונים שאינו העדפות משותפות.
  • אתם רוצים להציג את האמוג'י שהשתמשתם בהם לאחרונה, ממוינים לפי תדירות השימוש.

לאחר מכן, אפשר להטמיע את הממשק RecentEmojiProvider ולהגדיר אותו באמצעות setRecentEmojiProvider().

בורר הכיוון

החל מגרסה Emoji 15.1, החלונית לבחירת אמוג'י תומכת באמוג'י דו-כיווני. המשתמשים יכולים ללחוץ על המתג הדו-כיווני כדי לעבור בין גרסאות של אמוג'י שפונים שמאלה או ימינה.

אמוג'י דו-כיווני שמאלה

איור 4. אמוג'י דו-כיווני שפונה שמאלה.

אמוג'י דו-כיווני ימינה

איור 5. אמוג'י דו-כיווני שפונה ימינה.

בורר אמוג'י של כמה אנשים

המשתמשים יכולים ללחוץ לחיצה ארוכה על אמוג'י של זוגות כדי לראות אפשרויות של אמוג'י עם כמה אנשים.

לחיצה ארוכה על אמוג'י של זוג

איור 6. לוחצים לחיצה ארוכה על אמוג'י של זוג כדי לראות את האפשרויות לאמוג'י של כמה אנשים.

לחיצה על האמוג'י של האדם בצד שמאל

איור 7. בוחרים אמוג'י של אדם בצד ימין.

אמוג'י של אדם שמצביע ימינה

איור 8. בוחרים אמוג'י של אדם לחצי הימני.

כשהמשתמש בוחר את הדמות השמאלית או הימנית באמוג'י של זוג, מוצגת תצוגה מקדימה של הבורר בפינה השמאלית התחתונה, כמו שמוצג באיורים 7 ו-8. אחרי שבוחרים את שני החצאים של זוג האמוג'י, אפשר לבחור את התצוגה המקדימה כדי ליצור את זוג האמוג'י בהתאמה אישית.

תאימות ל-EmojiCompat

אם המדיניות מופעלת, נעשה שימוש במכונה של EmojiCompat בחלונית לבחירת אמוג'י כדי לעבד כמה שיותר אמוג'י. עם זאת, החלונית לבחירת אמוג'י לא דורשת את EmojiCompat.

דרישות מוקדמות

האפליקציה צריכה לטרגט ל-Android 5.0 (רמת API ‏21) ומעלה.

איך משתמשים בספרייה

  1. מייבאים את androidx.emoji2:emojipicker:$version בקובץ build.gradle של האפליקציה.

    dependencies {
        implementation "androidx.emoji2:emojipicker:$version"
    }
    
  2. מגדילים את התצוגה של חלונית בחירת האמוג'י, ואם רוצים, מגדירים את emojiGridRows ו-emojiGridColumns.

    • מספר ברירת המחדל של emojiGridColumns הוא 9.
    • מספר השורות מחושב על סמך הגובה של התצוגה הראשית והערך של emojiGridColumns.
    • כדי לציין שהמשתמש יכול לגלול כדי לראות עוד סמלי אמוג'י, משתמשים בערך מסוג float בשדה emojiGridRows.
    <androidx.emoji2.emojipicker.EmojiPickerView
        android:id="@+id/emoji_picker"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:emojiGridColumns="9" />
    
    val emojiPickerView = EmojiPickerView(context).apply {
        emojiGridColumns = 15
        layoutParams = ViewGroup.LayoutParams(
            ViewGroup.LayoutParams.MATCH_PARENT,
            ViewGroup.LayoutParams.MATCH_PARENT
        )
    }
    
    findViewById<ViewGroup>(R.id.emoji_picker_layout).addView(emojiPickerView)
    
  3. אפשר להשתמש ב-setOnEmojiPickedListener() כדי להוסיף את האמוג'י שנבחר לתצוגה. לדוגמה, כדי להוסיף ל-EditText, מבצעים את הפעולות הבאות:

    emojiPickerView.setOnEmojiPickedListener {
        findViewById<EditText>(R.id.edit_text).append(it.emoji)
    }
    
  4. אפשר להגדיר את RecentEmojiProvider, באפליקציה לדוגמה יש דוגמה להטמעה.

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

    <style name="CustomStyle" >
        <item name="colorControlNormal">#FFC0CB</item>
    </style>
    <androidx.emoji2.emojipicker.EmojiPickerView
        android:id="@+id/emoji_picker"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:theme="@style/CustomStyle"
        app:emojiGridColumns="9" />
    

אפליקציה לדוגמה

באפליקציה לדוגמה "חלונית לבחירת אמוג'י" מוצגים תרחישים בסיסיים לדוגמה, וגם התרחישים הנוספים הבאים:

  • חישוב מחדש של הפריסה כשמאפסים את emojiGridRows או את emojiGridColumns.
  • ספק אמוג'י שהוחלף לאחרונה, שממיין לפי תדירות.
  • התאמה אישית נוספת של הסגנון.