इमोजी पिकर, यूज़र इंटरफ़ेस (यूआई) का एक ऐसा समाधान है जो मॉडर्न लुक और स्टाइल के साथ-साथ अप-टू-डेट इमोजी उपलब्ध कराता है. साथ ही, इसे इस्तेमाल करना भी आसान है. उपयोगकर्ता, इमोजी और उनके वैरिएंट को ब्राउज़ और चुन सकते हैं या हाल ही में इस्तेमाल किए गए इमोजी में से कोई इमोजी चुन सकते हैं.
इस लाइब्रेरी की मदद से, अलग-अलग सोर्स के ऐप्लिकेशन अपने उपयोगकर्ताओं को एक जैसा और बेहतर इमोजी अनुभव दे सकते हैं. इसके लिए, डेवलपर को अपने इमोजी पिकर को शुरू से बनाने और उसे मैनेज करने की ज़रूरत नहीं पड़ती.
सुविधाएं
इमोजी पिकर में ये सुविधाएं मौजूद हैं.
अप-टू-डेट इमोजी
हाल ही में रिलीज़ किए गए इमोजी, इमोजी पिकर में चुनिंदा तौर पर शामिल किए जाते हैं. इमोजी चुनने की लाइब्रेरी, Android के कई वर्शन और डिवाइसों के साथ काम करती है.
स्टिक वैरिएंट
किसी इमोजी को दबाकर रखने पर, उसके वैरिएंट का मेन्यू दिखता है. जैसे, अलग-अलग लिंग या त्वचा के रंग. आपका चुना गया वैरिएंट, इमोजी पिकर में सेव हो जाता है. साथ ही, आखिरी बार चुने गए वैरिएंट का इस्तेमाल मुख्य पैनल में किया जाता है.
इस सुविधा की मदद से, उपयोगकर्ता एक टैप से अपने पसंदीदा इमोजी के वैरिएंट भेज सकते हैं.
हाल ही में इस्तेमाल किए गए इमोजी
RecentEmojiProvider
, हाल ही में इस्तेमाल किए गए कैटगरी में इमोजी उपलब्ध कराने के लिए ज़िम्मेदार है. लाइब्रेरी में, हाल ही में इस्तेमाल किए गए इमोजी की जानकारी देने वाली डिफ़ॉल्ट सेवा उपलब्ध होती है. यह सेवा, इमोजी के इस्तेमाल के सबसे सामान्य उदाहरणों के लिए काम करती है:
- चुने गए सभी इमोजी, शेयर की गई प्राथमिकताओं में हर ऐप्लिकेशन के लिए सेव किए जाते हैं.
- पिकर, चुने गए इमोजी की ज़्यादा से ज़्यादा तीन पंक्तियां दिखाता है. इनमें डुप्लीकेट इमोजी नहीं होते और इन्हें समय के उलटे क्रम में दिखाया जाता है.
अगर यह डिफ़ॉल्ट तरीका आपके लिए सही है, तो आपको setRecentEmojiProvider()
का इस्तेमाल करने की ज़रूरत नहीं है.
हालांकि, आपको सेवा देने वाली कंपनी के व्यवहार को पसंद के मुताबिक बनाना पड़ सकता है. यहां कुछ सामान्य उदाहरण दिए गए हैं:
- आपको हर उपयोगकर्ता खाते के लिए, चुने गए अलग-अलग इमोजी सेव करने हैं.
- आपको शेयर की गई सेटिंग के अलावा, किसी दूसरे डेटा स्टोरेज का इस्तेमाल करना है.
- आपको हाल ही में इस्तेमाल किए गए इमोजी को, इस्तेमाल की फ़्रीक्वेंसी के हिसाब से क्रम में लगाकर दिखाना है.
इसके बाद, RecentEmojiProvider
इंटरफ़ेस को लागू किया जा सकता है और इसे setRecentEmojiProvider()
का इस्तेमाल करके सेट किया जा सकता है.
निर्देश चुनने वाला टूल
Emoji 15.1 से, इमोजी पिकर में दोनों दिशाओं में काम करने वाले इमोजी का इस्तेमाल किया जा सकता है. उपयोगकर्ता, इमोजी के बाएं और दाएं हिस्से के बीच टॉगल करने के लिए, दोनों तरफ़ स्विच करने वाले आइकॉन पर टैप कर सकते हैं.
एक से ज़्यादा लोगों के इमोजी चुनने वाला टूल
उपयोगकर्ता, एक से ज़्यादा लोगों वाले इमोजी चुनने के लिए, इमोजी के जोड़े को दबाकर रख सकते हैं.
जब कोई उपयोगकर्ता, इमोजी कपल के बाईं या दाईं ओर मौजूद इमोजी को चुनता है, तो सिलेक्टर सबसे नीचे दाईं ओर झलक दिखाता है, जैसा कि सातवीं और आठवीं इमेज में दिखाया गया है. इमोजी कपल के दोनों हिस्सों को चुनने के बाद, उपयोगकर्ता अपनी पसंद के मुताबिक इमोजी कपल बनाने के लिए झलक चुन सकते हैं.
EmojiCompat
के साथ काम करना
अगर यह चालू है, तो ज़्यादा से ज़्यादा इमोजी रेंडर करने के लिए, इमोजी पिकर में EmojiCompat
इंस्टेंस का इस्तेमाल किया जाता है. हालांकि, इमोजी पिकर के लिए EmojiCompat
की ज़रूरत नहीं होती.
ज़रूरी शर्तें
आपका ऐप्लिकेशन, Android 5.0 (एपीआई लेवल 21) या उसके बाद के वर्शन को टारगेट करता हो.
लाइब्रेरी का इस्तेमाल करना
अपने ऐप्लिकेशन की
build.gradle
फ़ाइल मेंandroidx.emoji2:emojipicker:$version
इंपोर्ट करें.dependencies { implementation "androidx.emoji2:emojipicker:$version" }
इमोजी पिकर व्यू को बड़ा करें और
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()
का इस्तेमाल करें. उदाहरण के लिए, किसी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" />
Sample App
इमोजी पिकर सैंपल ऐप्लिकेशन में, इस्तेमाल के बुनियादी उदाहरणों के साथ-साथ, इन अतिरिक्त स्थितियों के बारे में बताया गया है:
emojiGridRows
याemojiGridColumns
रीसेट होने पर, लेआउट का फिर से हिसाब लगाना.- हाल ही में इस्तेमाल किए गए इमोजी की सेवा देने वाली कंपनी, जिसे इस्तेमाल की फ़्रीक्वेंसी के हिसाब से क्रम में लगाया गया है.
- स्टाइल को पसंद के मुताबिक बनाने के अन्य विकल्प.