Emoji seçici, modern bir görünüm ve his, güncel emoji'ler ve kullanım kolaylığı sunan bir kullanıcı arayüzü çözümüdür. Kullanıcılar emojilere ve varyantlarına göz atıp bunları seçebilir veya son kullandıkları emojilerden birini tercih edebilir.
Bu kitaplık sayesinde, çeşitli kaynaklardan gelen uygulamalar, geliştiricilerin kendi emoji seçicilerini sıfırdan oluşturup sürdürmeleri gerekmeden kullanıcılarına kapsayıcı ve birleşik bir emoji deneyimi sunabilir.
Özellikler
Emoji seçicinin özellikleri:
Güncel emoji'ler
Yeni yayınlanan emojiler, Emoji Seçici'ye seçilerek eklenir. EmojiPicker kitaplığı, birden fazla Android sürümü ve cihazla uyumludur.
Yapışkan varyantlar
Farklı cinsiyetler veya ten renkleri gibi varyantların menüsünü görüntülemek için bir emojiye uzun basın. Seçtiğiniz varyant, emoji seçicide kaydedilir ve ana panelde son seçilen varyant kullanılır.
Bu özellik sayesinde kullanıcılar, tercih ettikleri emoji varyantlarını tek dokunuşla gönderebilir.
Son kullanılan emoji
RecentEmojiProvider, Son Kullanılanlar kategorisinde emoji sağlamaktan sorumludur. Kitaplıkta, en yaygın kullanım alanını karşılayan varsayılan bir son kullanılan emoji sağlayıcı bulunur:
- Seçilen tüm emojiler, paylaşılan tercihlerde uygulama bazında kaydedilir.
- Seçici, en fazla üç satır seçilmiş emojiyi ters kronolojik sırada ve yinelenenleri kaldırarak gösterir.
Bu varsayılan davranış yeterliyse setRecentEmojiProvider() özelliğini kullanmanız gerekmez.
Ancak sağlayıcı davranışını özelleştirmeniz gerekebilir. Sık karşılaşılan senaryolardan bazıları şunlardır:
- Kullanıcı hesabı başına farklı seçilmiş emojiler depolamak istiyorsanız.
- Paylaşılan tercihler dışında bir veri depolama alanı kullanmak istiyorsanız.
- Sıklığa göre sıralanmış son kullanılan emojileri göstermek istiyorsanız.
Ardından RecentEmojiProvider arayüzünü uygulayabilir ve setRecentEmojiProvider() kullanarak ayarlayabilirsiniz.
Yön seçici
Emoji seçici, Emoji 15.1'den itibaren çift yönlü emojileri destekler. Kullanıcılar, emoji'nin sola ve sağa bakan versiyonları arasında geçiş yapmak için çift yönlü değiştiriciye dokunabilir.

Şekil 4. Sola bakan çift yönlü emoji.

Şekil 5. Sağa bakan çift yönlü emoji.
Çok karakterli emoji seçici
Kullanıcılar, çok karakterli emoji seçeneklerini görmek için çift emoji'lere dokunup basılı tutabilir.

Şekil 6. Çoklu kişi emojisi seçeneklerini görmek için bir emoji çiftine dokunup basılı tutun.

Şekil 7. Sol yarısı emoji olan bir kişi seçin.

Şekil 8. Sağ yarısı emoji olan bir kişi seçin.
Kullanıcı, emoji çiftinin sol veya sağ yarısını seçtiğinde, seçici sağ altta bir önizleme gösterir (Şekil 7 ve 8'de gösterildiği gibi). Emoji çiftinin iki yarısını da seçtikten sonra, özel emoji çiftini oluşturmak için önizlemeyi seçebilirler.
EmojiCompat ile uyumluluk
Etkinleştirilirse Emoji Seçici'de mümkün olduğunca çok emoji oluşturmak için bir EmojiCompat örneği kullanılır. Emoji seçici için EmojiCompat gerekmez.
Ön koşullar
Uygulamanız Android 5.0 (API düzeyi 21) veya sonraki sürümleri hedeflemelidir.
Kitaplığı kullanma
Uygulamanızın
build.gradledosyasındaandroidx.emoji2:emojipicker:$versionöğesini içe aktarın.dependencies { implementation "androidx.emoji2:emojipicker:$version" }Emoji seçici görünümünü genişletin ve isteğe bağlı olarak
emojiGridRowsileemojiGridColumnsdeğerlerini ayarlayın.- Varsayılan
emojiGridColumnssayısı 9'dur. - Satır sayısı, ebeveyn görünümü yüksekliğine ve
emojiGridColumnsdeğerine göre hesaplanır. - Kullanıcının daha fazla emoji için kaydırabileceğini belirtmek üzere
emojiGridRowsiçin kayan nokta değeri kullanın.
<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)- Varsayılan
Seçili emojiyi bir görünüme eklemek için
setOnEmojiPickedListener()simgesini kullanın. Örneğin, birEditTextöğesine eklemek için aşağıdakileri yapın:emojiPickerView.setOnEmojiPickedListener { findViewById<EditText>(R.id.edit_text).append(it.emoji) }İsteğe bağlı olarak
RecentEmojiProviderayarlayın. Örnek uygulama için örnek bir uygulama görün.İsteğe bağlı olarak stilleri özelleştirin. Sık kullanılan tema özelliklerini geçersiz kılmak ve stili
EmojiPickerViewuygulamak için kendi stilinizi oluşturun. Örneğin,colorControlNormalgeçersiz kılma işlemi kategori simgesinin rengini değiştirir.<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" />
Sample App
Emoji seçici örnek uygulaması, temel kullanım alanlarının yanı sıra aşağıdaki ek senaryoları da gösterir:
emojiGridRowsveyaemojiGridColumnssıfırlandığında düzen yeniden hesaplanır.- Sıklığa göre sıralama yapan, son kullanılan emoji sağlayıcısı geçersiz kılınmış.
- Ek stil özelleştirme