Bedste svar
Personligt er mit foretrukne tastatur i Android-systemet det gratis emoji-tastatur.
Emoji-tastaturfunktioner
Smart svar
Forudsigelse af næste ord, forudsigelse af emoji og forudsigelse af tekstoverflader , inklusive humørikoner med glad tekst, gabende ansigt og blinkende ansigt.
Personaliserede gratis temaer
En stor samling af gratis tastaturtemaer. Der vil altid være en til dig i vores temacenter.
Opret dine egne temaer
Prøv og tilpas dine egne temaer, f.eks. skiftende baggrunde og baggrunde med dine egne fotos, skiftning af skrifttyper, musik (lyd), dynamiske effekter og farven på tastaturerne.
Flersproget skrivning
Emoji-tastatur til Android understøtter over 150 sprog
Svar
1. Enkel integration
Nedenfor er syntaksen for en simpel integration til Emojis Keyboard. EmojiIconAtions -konstruktøren accepterer fire parametre, Context , RootView , EmojiconEditText og ImageView . Normalt er det den bedste mulighed for at vise Emojis Keyboard frem for alle visninger ved at overføre det overordnede layout som RootView. EmojiconEditText er en EditText med flere brugerdefinerede attributter, der muliggør gengivelse af emojis. Og den sidste parameter, ImageView vil bruge til at skifte mellem det normale tastatur og emojis-tastaturet.
For at få vist emojis i TextView bruger vi EmojiconTextView som også er en TextView med flere brugerdefinerede attributter, der muliggør gengivelse af emojis
EmojIconActions emojIcon= new
EmojIconActions(this, rootView, emojiconEditText,
emojiImageView);
emojIcon.ShowEmojIcon();
Hvis du vil bruge det i xml-layout, bruger vi EmojiconEditText i stedet for det normale EditText .
android:id="@+id/emojicon\_edit\_text"
android:layout\_width="match\_parent"
android:layout\_height="wrap\_content"
emojicon:emojiconSize="28sp"
/>
Og EmojiconTextView i stedet for TextView
android:id="@+id/emojicon\_text\_view"
android:layout\_width="wrap\_content"
android:layout\_height="wrap\_content"
emojicon:emojiconSize="28sp"/>
2. Skift standard skifteikon
For at skifte mellem normalt tastatur og emojis-tastatur kan du ringe til setIconsIds () -metoden, som tager to parametre, Keyboard-ikon-id og smiley-ikon-id .
emojIcon.setIconsIds(R.drawable.ic\_action\_keyboard,R.drawable.smiley);
3. Brug af enhedens standardemojis
SuperNove-Emoji giver dig mulighed for at bruge enhedsemojis på en enkel måde, du skal indstille den boolske værdi på setUseSystemEmoji ( ) og setUseSystemDefault () metoder til SAND i hver EmojiconTextView og EmojiconEditText du bruger til at vise emojis.
emojIcon.setUseSystemEmoji(true);
textView.setUseSystemDefault(true);
emojiconEditText.setUseSystemDefault(true);
Xml-attribut:
emojicon:emojiconUseSystemDefault="true"
4. Ændring af Emojis-størrelse
For at ændre Emojis-størrelse skal du ændre tekststørrelsen ved at indstille værdien setEmojiconSize () -metode.
textView.setEmojiconSize(30);
XML-kode
emojicon:emojiconSize="28sp"
5. Registrer, når tastaturet åbnes eller lukkes
SuperNova-Emoji giver dig mulighed for at registrere, når brugeren åbner tastaturet eller lukker det for at tage nogle handlinger, hvis det er nødvendigt, som f.eks. At vise nogle visninger, når tastaturet åbner og skjuler det når tastaturet lukkede. Brug nedenstående kodeblok for at opnå dette.
emojIcon.setKeyboardListener(new
EmojIconActions.KeyboardListener() {
@Override
public
void
onKeyboardOpen() {
Log.i("Keyboard","open");
}
@Override
public
void
onKeyboardClose() {
Log.i("Keyboard","close");
}
});
6.Ændring af Emoji-tastaturfarverne, så de passer til dit apptema
Du kan indstille tre farver til emojis-tastaturet ved at tilføje tre parametre til konstruktøren, som de trykkes på faner ikonfarve, fanefarve og baggrund farve. Vi bruger den samme konstruktør ovenfor med farveværdien.
EmojIconActions emojIcon= new
EmojIconActions(this, rootView, emojiconEditText, emojiImageView,
"#F44336","#e8e8e8","#f4f4f4");
emojIcon.ShowEmojIcon();
7. Oprettelse af en prøveapp
Nu opretter vi en simpel app, der integrerer emojierne for at få en god forståelse af den i en rigtig app.
1 . I Android Studio skal du gå til Fil ⇒ Nyt projekt og udfylde alle de nødvendige detaljer for at oprette et nyt projekt.
2 . Åbn build.gradle og tilføj supernova emoji-bibliotek. Du skal også tilføje dets maven-lager.
repositories {
maven { url "
https://dl.bintray.com/hani-momanii/maven "}
}
dependencies {
.
.
.
// Supernova Emoji
compile "hani.momanii.supernova\_emoji\_library:supernova-emoji-library:0.0.2"
}
3 . Åbn layoutfilen din hovedaktivitet activity\_main.xml og tilføj nedenstående kode. Her kan du se, at jeg har tilføjet emojiconEditText , emojiconTextView og ImageView .
activity\_main.xml
version="1.0"
encoding="utf-8"?>
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:paddingBottom="@dimen/activity\_vertical\_margin"
android:paddingLeft="@dimen/activity\_horizontal\_margin"
android:paddingRight="@dimen/activity\_horizontal\_margin"
android:paddingTop="@dimen/activity\_vertical\_margin"
tools:context="info.androidhive.emojis.MainActivity">
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="@drawable/ic\_insert\_emoticon\_black\_24dp"
/>
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: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"
emojicon:emojiconSize="28sp"
/>
android:id="@+id/use\_system\_default"
android:layout\_width="wrap\_content"
android:layout\_height="wrap\_content"
android:layout\_below="@+id/textView"
android:layout\_centerHorizontal="true"
android:checked="false"
android:text="Use System Default?"
/>
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:text="Hello Emojis!"
android:textAppearance="@style/TextAppearance.AppCompat.Large"
android:textColor="#000000"
emojicon:emojiconSize="45sp"
emojicon:emojiconUseSystemDefault="true"
/>
4 . Åbn nu MainActivity.java og foretag ændringerne som nævnt nedenfor. Denne aktivitet viser de forskellige scenarier for implementering af SuperNova-Emoji som forklaret ovenfor.
MainActivity.java
package
info.androidhive.emojis;
import
android.os.Bundle;
import
android.support.v7.app.AppCompatActivity;
import
android.util.Log;
import
android.view.View;
import
android.widget.CheckBox;
import
android.widget.CompoundButton;
import
android.widget.ImageView;
import
hani.momanii.supernova\_emoji\_library.Actions.EmojIconActions;
import
hani.momanii.supernova\_emoji\_library.Helper.EmojiconEditText;
import
hani.momanii.supernova\_emoji\_library.Helper.EmojiconTextView;
public
class
MainActivity extends
AppCompatActivity {
private
static
final
String TAG = MainActivity.class.getSimpleName();
CheckBox mCheckBox;
EmojiconEditText emojiconEditText;
EmojiconTextView textView;
ImageView emojiImageView;
ImageView submitButton;
View rootView;
EmojIconActions emojIcon;
@Override
protected
void
onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\_main);
rootView = findViewById(R.id.root\_view);
emojiImageView = (ImageView) findViewById(R.id.emoji\_btn);
submitButton = (ImageView) findViewById(R.id.submit\_btn);
mCheckBox = (CheckBox) findViewById(R.id.use\_system\_default);
emojiconEditText = (EmojiconEditText) findViewById(R.id.emojicon\_edit\_text);
textView = (EmojiconTextView) findViewById(R.id.textView);
emojIcon = new
EmojIconActions(this, rootView, emojiconEditText, emojiImageView);
emojIcon.ShowEmojIcon();
emojIcon.setIconsIds(R.drawable.ic\_action\_keyboard, R.drawable.smiley);
emojIcon.setKeyboardListener(new
EmojIconActions.KeyboardListener() {
@Override
public
void
onKeyboardOpen() {
Log.e(TAG, "Keyboard opened!");
}
public
void
onKeyboardClose() {
Log.e(TAG, "Keyboard closed");
}
});
mCheckBox.setOnCheckedChangeListener(new
CompoundButton.OnCheckedChangeListener() {
@Override
public
void
onCheckedChanged(CompoundButton compoundButton, boolean
b) {
emojIcon.setUseSystemEmoji(b);
textView.setUseSystemDefault(b);
}
});
submitButton.setOnClickListener(new
View.OnClickListener() {
@Override
public
void
onClick(View v) {
String newText = emojiconEditText.getText().toString();
textView.setText(newText);
}
});
}
}
Kør og test appen.