Emoji Picker یک راه حل رابط کاربری است که ظاهر و احساس مدرن، شکلک های به روز و سهولت استفاده را ارائه می دهد. کاربران میتوانند شکلکها و انواع آنها را مرور و انتخاب کنند یا از ایموجیهایی که اخیراً استفاده کردهاند انتخاب کنند.
با استفاده از این کتابخانه، برنامهها از منابع مختلف میتوانند تجربهای جامع و یکپارچه از شکلک را برای کاربران خود فراهم کنند، بدون اینکه توسعهدهندگان مجبور باشند انتخابگر ایموجی خود را از ابتدا بسازند و نگهداری کنند.
ویژگی ها
Emoji Picker دارای ویژگی های زیر است.
ایموجی های به روز
ایموجی های تازه منتشر شده به صورت انتخابی در Emoji Picker گنجانده شده اند. کتابخانه Emoji Picker با چندین نسخه و دستگاه اندروید سازگار است.
انواع چسبنده
برای نمایش منویی از انواع مختلف، مانند جنسیت یا رنگ پوست، یک شکلک را طولانی فشار دهید. گونه ای که انتخاب می کنید در Emoji Picker ذخیره می شود و آخرین نوع انتخاب شده در پانل اصلی استفاده می شود.
با استفاده از این ویژگی، کاربران می توانند انواع شکلک های دلخواه خود را با یک ضربه ارسال کنند.
ایموجی های اخیر
RecentEmojiProvider
مسئول ارائه ایموجی در دسته Recently Used است. این کتابخانه یک ارائهدهنده شکلک اخیر پیشفرض دارد که رایجترین موارد استفاده را برآورده میکند:
- همه شکلکهای انتخابی در هر برنامه در تنظیمات برگزیده مشترک ذخیره میشوند.
- انتخابگر حداکثر سه ردیف از ایموجیهای انتخاب شده را به ترتیب زمانی معکوس نمایش میدهد.
اگر این رفتار پیشفرض کافی است، دیگر نیازی به استفاده از setRecentEmojiProvider()
ندارید.
با این حال، ممکن است لازم باشد رفتار ارائه دهنده را سفارشی کنید. در اینجا چند سناریو رایج وجود دارد:
- میخواهید شکلکهای انتخابی متفاوتی را برای هر حساب کاربری ذخیره کنید.
- شما می خواهید از ذخیره سازی داده به غیر از تنظیمات برگزیده مشترک استفاده کنید.
- میخواهید شکلکهای اخیر را مرتبشده بر اساس فرکانس نمایش دهید.
سپس می توانید رابط RecentEmojiProvider
را پیاده سازی کنید و با استفاده از setRecentEmojiProvider()
تنظیم کنید.
انتخابگر جهت
با Emoji 15.1 شروع می شود، Emoji Picker از شکلک های دو طرفه پشتیبانی می کند. کاربران میتوانند برای جابهجایی بین نسخههای سمت چپ و راست شکلک، روی سوئیچر دوطرفه ضربه بزنند.
انتخابگر ایموجی چند نفره
کاربران می توانند زوج های ایموجی را لمس کرده و نگه دارند تا انتخاب های ایموجی های چند نفره را نشان دهند.
هنگامی که کاربر نیمی از شکلک های سمت چپ یا راست یک زوج شکلک را انتخاب می کند، انتخابگر یک پیش نمایش را در پایین سمت راست نمایش می دهد، همانطور که در شکل های 7 و 8 نشان داده شده است. پس از انتخاب هر دو نیمه از زوج ایموجی، کاربران می توانند پیش نمایش برای ساخت زوج شکلک سفارشی.
سازگاری با 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
بازنشانی می شوند. - ارائهدهنده شکلکهای اخیر لغو شده که بر اساس فرکانس مرتب میشود.
- سفارشی سازی سبک اضافی