Emoji Picker یک راه حل رابط کاربری است که ظاهر و احساس مدرن، ایموجی های به روز و سهولت استفاده را ارائه می دهد. کاربران میتوانند شکلکها و انواع آنها را مرور و انتخاب کنند یا از میان شکلکهایی که اخیراً استفاده کردهاند انتخاب کنند.
با استفاده از این کتابخانه، برنامهها از منابع مختلف میتوانند تجربهای جامع و یکپارچه از شکلک را برای کاربران خود فراهم کنند، بدون اینکه توسعهدهندگان مجبور باشند انتخابگر ایموجی خود را از ابتدا بسازند و نگهداری کنند.
ویژگی ها
ایموجی های به روز
ایموجی های تازه منتشر شده به صورت انتخابی در Emoji Picker گنجانده شده اند. کتابخانه Emoji Picker با چندین نسخه و دستگاه اندروید سازگار است.
انواع چسبنده
برای نمایش منویی از انواع مختلف، مانند جنسیت یا رنگ پوست، یک شکلک را طولانی فشار دهید. گونه ای که انتخاب می کنید در Emoji Picker ذخیره می شود و آخرین نوع انتخاب شده در پانل اصلی استفاده می شود.
با استفاده از این ویژگی، کاربران می توانند انواع شکلک های دلخواه خود را با یک ضربه ارسال کنند.
![انواع ایموجی](https://developer.android.com/static/images/develop/ui/views/text-and-emoji/emoji-variants.png?hl=fa)
ایموجی های اخیر
![ایموجی های اخیر](https://developer.android.com/static/images/develop/ui/views/text-and-emoji/recent-emoji.png?hl=fa)
RecentEmojiProvider
مسئول ارائه ایموجی ها در دسته Recently Used می باشد. این کتابخانه یک ارائهدهنده شکلک اخیر پیشفرض دارد که رایجترین موارد استفاده را برآورده میکند:
- همه ایموجیهای انتخابشده در هر برنامه در اولویتهای مشترک ذخیره میشوند.
- انتخابگر حداکثر 3 ردیف از شکلکهای انتخابی را به ترتیب زمانی معکوس نمایش میدهد.
اگر این رفتار پیشفرض کافی است، دیگر نیازی به استفاده از setRecentEmojiProvider()
ندارید.
با این حال، ممکن است لازم باشد رفتار ارائه دهنده را سفارشی کنید. در اینجا چند سناریو رایج وجود دارد:
- شما می خواهید ایموجی های مختلف انتخاب شده را برای هر حساب کاربری ذخیره کنید.
- شما می خواهید از ذخیره سازی داده به غیر از تنظیمات برگزیده مشترک استفاده کنید.
- میخواهید شکلکهای اخیر را مرتبشده بر اساس فرکانس نمایش دهید.
سپس می توانید رابط RecentEmojiProvider
را پیاده سازی کنید و با استفاده از setRecentEmojiProvider()
تنظیم کنید.
سازگاری با EmojiCompat
اگر فعال باشد، یک نمونه EmojiCompat
در Emoji Picker استفاده میشود تا تا حد امکان شکلکها را ارائه کند. با این حال، Emoji Picker به EmojiCompat
نیاز ندارد.
پیش نیازها
برنامه شما باید Android 5.0 (سطح API 21) یا بالاتر را هدف قرار دهد.
از کتابخانه استفاده کنید
androidx.emoji2:emojipicker:$version
در فایلbuild.gradle
برنامه خود وارد کنید.dependencies { implementation "androidx.emoji2:emojipicker:$version" }
نمای Emoji Picker را باد کنید و به صورت اختیاری
emojiGridRows
وemojiGridColumns
را تنظیم کنید.- تعداد پیش فرض
emojiGridColumns
9 است. - تعداد ردیف بر اساس ارتفاع نمای والد و مقدار
emojiGridColumns
محاسبه میشود. - از یک مقدار شناور برای
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)
- تعداد پیش فرض
از
setOnEmojiPickedListener()
برای اضافه کردن ایموجی های انتخاب شده به یک View استفاده کنید. به عنوان مثال، برای افزودن به یکEditText
، موارد زیر را انجام دهید:emojiPickerView.setOnEmojiPickedListener { findViewById<EditText>(R.id.edit_text).append(it.emoji) }
به صورت اختیاری
RecentEmojiProvider
را تنظیم کنید، برای اجرای نمونه برنامه نمونه را ببینید.به صورت اختیاری استایل ها را سفارشی کنید. سبک خود را ایجاد کنید تا ویژگیهای تم رایج را نادیده بگیرید و سبک را در
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" />
نمونه برنامه
برنامه نمونه Emoji Picker موارد استفاده اولیه را همراه با سناریوهای اضافی زیر نشان می دهد:
- محاسبه مجدد چیدمان زمانی که
emojiGridRows
یاemojiGridColumns
بازنشانی می شوند. - ارائهدهنده شکلکهای اخیر لغو شده که بر اساس فرکانس مرتب میشود.
- سفارشی سازی سبک اضافی