2016-03-28 22 views
1

私はすべてのキーボードタイプのスマイルを絵文字アイコンに変換したいアンドロイドアプリケーションに取り組んでいます。androidの文字列からテキストスマイリーを抽出するには

私はすでにこのライブラリhttps://github.com/ankushsachdeva/emojiconを使用しています。私のアプリに絵文字を表示しています。

ここで、ユーザーがキーボードを使用して入力するスマイリーを絵文字に変換したいと考えています。

例:ユーザーがHello World :)という文字列を入力した場合:P: 1.これらのスマイリーシンボルを最初に抽出する必要があり、そのために文字列からこれらのタイプのシンボルをすべて抽出する正規表現パターンが必要です。 2.これらのシンボルのUnicodeを見つけ、上記のライブラリを使用してこれらのシンボルを顔文字で変換する必要があります。

私がここに進むことができるように助けてください。

答えて

1

このlibにImageSpan Sを使用して、ここのようなSpannableStringBuilderさ: EmojiconTextView

public void setText(CharSequence text, BufferType type) { 
    SpannableStringBuilder builder = new SpannableStringBuilder(text); 
    EmojiconHandler.addEmojis(getContext(), builder, mEmojiconSize, mTextStart, mTextLength); 
    super.setText(builder, type); 
} 

あなたはスパンを設定したい場合は、必ず「オンザフライで」現在のSpannableStringBuilderからスパンを削除して、プレーンテキスト

を得ることができますEditTextTextWatcherを使用してください。EmojiconEditText

protected void onTextChanged(CharSequence text, int start, int lengthBefore, int lengthAfter) { 
    EmojiconHandler.addEmojis(getContext(), getText(), mEmojiconSize); 
} 

このlibはすべてあなたのために働いているようです。libのViewをlib(Emojiconという接頭辞)で置き換えてください。 XMLレイアウトファイルで

<ankushsachdeva.emojicon.EmojiconTextView 
     android:id="@+id/emojicon" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     emojicon:emojiconSize="24dip" 
     android:gravity="center"/> 

代わりEditText

+0

これは結構です、私はすでにこのライブラリを使用して自分のアプリケーションで絵文字キーボードを実装しているが、私は絵文字にも、単純なテキスト顔文字を変換したいです。 文字列から文字スマイリーを抽出するための正規表現パターンが必要です。誰かが私を助けてくれますか? ありがとう:) –

+0

私はどのようにシンボルを抽出することができます:)または:P:文字列からd。文字列からこれらのタイプのシンボルをすべて検出するパターンが必要です。 –

関連する問題