کتابخانه SEmojis اندروید
نمایش اموجی و رندر آنها ذر اندروید
به همراه سورس کد و مثال
SEmojis، کتابخانهای برای اندروید است که قابلیت پیادهسازی و رندر (نمایش) اموجیها را در برنامهنویسی اندروید ممکن میسازد.
شروع به کار
ابتدا مخزن ریپوزیتوری زیر را به لیست ریپوزیتوریهای خود اضافه کنید:
1 2 3 |
repositories { maven { url 'https://jitpack.io' } } |
و کتابخانه را نیز به نیز به صورت زیر به وابستگیهای پروژه خود اضافه کنید:
1 2 3 |
dependencies { implementation 'com.github.TutorialsAndroid:SEmojis:v0.2' } |
استفاده در کد
در سمت جاوا به صورت زیر به وضعیت کیبورد گوش میدهیم:
1 2 3 4 5 6 7 8 9 10 11 |
emojIcon.setKeyboardListener(new EmojIconActions.KeyboardListener() { @Override public void onKeyboardOpen() { Log.e("Keyboard","open"); } @Override public void onKeyboardClose() { Log.e("Keyboard","close"); } }); |
در کد XML:
1 2 3 4 5 6 7 8 9 10 11 12 |
<developer.semojis.Helper.EmojiconEditText android:id="@+id/emojicon_edit_text" android:layout_width="match_parent" android:layout_height="wrap_content" emojicon:emojiconSize="28sp" /> <developer.semojis.Helper.EmojiconTextView android:id="@+id/emojicon_text_view" android:layout_width="wrap_content" android:layout_height="wrap_content" emojicon:emojiconSize="28sp"/> |
ویوها
- EmojiconTextView: یک TextView که میتواند اموجیها را نمایش دهد.
- EmojiconEditText: یک EditText که میتواند اموجیها را نمایش دهد.
- EmojiconMultiAutoCompleteTextView: یک MultiAutoCompleteTextView که میتواند اموجیها را نمایش دهد.
مثال
فایل MainActivity.java:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 |
package com.fullkade.test; import android.os.Build; import android.support.annotation.RequiresApi; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.util.Log; import android.view.View; import android.widget.ImageView; import developer.semojis.actions.EmojIconActions; import developer.semojis.Helper.EmojiconEditText; import developer.semojis.Helper.EmojiconTextView; import java.util.Objects; public class MainActivity extends AppCompatActivity { private EmojiconEditText emojiconEditText; private EmojiconTextView textView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activitymain); View rootView = findViewById(R.id.root_view); ImageView emojiButton = findViewById(R.id.emoji_btn); ImageView submitButton = findViewById(R.id.submit_btn); emojiconEditText = findViewById(R.id.emojicon_edit_text); EmojiconEditText emojiconEditText2 = findViewById(R.id.emojicon_edit_text2); textView = findViewById(R.id.textView); EmojIconActions emojIcon = new EmojIconActions(this, rootView, emojiconEditText, emojiButton); emojIcon.ShowEmojIcon(); emojIcon.setKeyboardListener(new EmojIconActions.KeyboardListener() { @Override public void onKeyboardOpen() { Log.e("Keyboard", "open"); } @Override public void onKeyboardClose() { Log.e("Keyboard", "close"); } }); emojIcon.addEmojiconEditTextList(emojiconEditText2); submitButton.setOnClickListener(new View.OnClickListener() { @RequiresApi(api = Build.VERSION_CODES.KITKAT) @Override public void onClick(View v) { String newText = Objects.requireNonNull(emojiconEditText.getText()).toString(); textView.setText(newText); } }); } } |
فایل activity_main.xml:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 |
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:emojicon="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/root_view" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#ffffff" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity"> <ImageView android:id="@+id/emoji_btn" android:layout_width="40dp" android:layout_height="40dp" android:layout_alignParentBottom="true" android:layout_alignParentLeft="true" android:padding="4dp" android:src="@mipmap/smiley" android:layout_alignParentStart="true" android:contentDescription="@string/emoji"/> <ImageView android:id="@+id/submit_btn" android:layout_width="40dp" android:layout_height="40dp" android:layout_alignParentBottom="true" android:layout_alignParentRight="true" android:padding="4dp" android:src="@android:drawable/ic_menu_send" android:layout_alignParentEnd="true" android:contentDescription="@string/send"/> <developer.semojis.Helper.EmojiconEditText android:id="@+id/emojicon_edit_text" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_toLeftOf="@id/submit_btn" android:layout_toRightOf="@id/emoji_btn" android:imeOptions="actionSend" android:inputType="text" emojicon:emojiconSize="28sp" android:layout_toStartOf="@id/submit_btn" android:layout_toEndOf="@id/emoji_btn"/> <developer.semojis.Helper.EmojiconEditText android:id="@+id/emojicon_edit_text2" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_above="@id/emojicon_edit_text" android:imeOptions="actionSend" android:inputType="text" emojicon:emojiconSize="28sp"/> <developer.semojis.Helper.EmojiconTextView android:id="@+id/textView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_centerVertical="true" android:layout_marginTop="26dp" android:lineSpacingExtra="17sp" android:text="@string/semojis" android:textAppearance="@style/TextAppearance.AppCompat.Large" android:textColor="#000000" emojicon:emojiconAlignment="bottom"/> </RelativeLayout> |
نظرات ثبت شده بدون دیدگاه