EmoticonsBoard
1.0.0
XhsEmoticonsKeyboard からインスピレーションを受けてフレームワークが再設計され、顔文字を動的に更新する機能が追加されました。 EmoticonPacksAdapter を使用すると、絵文字を簡単に追加または削除できます。
新しいコードは Kotlin を使用して開発されます。
allprojects {
repositories {
jcenter()
}
}
そして:
dependencies {
compile 'im.ll:emoticonsboard:1.0.0'
}
EmoticonsBoard は EmoticonPacksAdapter を設定することで顔文字を表示します。 EmoticonPacksAdapter には、絵文字データを運ぶために使用される EmoticonPack のリストが含まれています。各 EmoticonPack は絵文字のコレクションを表します。 PageFactory は式を表示するビューを作成するために使用され、式はページの形式で表示されます。 さまざまな PageFactory をカスタマイズすることで、さまざまな方法で絵文字を表示できます。
< github .ll.emotionboard.EmoticonsBoard xmlns : android = " http://schemas.android.com/apk/res/android "
xmlns : app = " http://schemas.android.com/apk/res-auto "
android : layout_width = " match_parent "
android : layout_height = " match_parent "
android : orientation = " vertical " >
< LinearLayout
android : layout_width = " match_parent "
android : layout_height = " match_parent "
android : orientation = " vertical " >
< ListView
android : layout_width = " match_parent "
android : layout_height = " match_parent " />
</ LinearLayout >
</ github .ll.emotionboard.EmoticonsBoard>
EmoticonsBoard は子ビューを 1 つだけ持つことができます
Java コード:
EmoticonsBoard ekBar;
List<EmoticonPack> packs = new ArrayList<EmoticonPack>;
init packs...
EmoticonPacksAdapter adapter = new EmoticonPacksAdapter(packs);
ekBar.setAdapter(adapter);
詳細についてはデモソースを参照してください
Kotlin コード:
private var adapter: EmoticonPacksAdapter? = null
private lateinit var mEmojiPack: EmoticonPack<Emoticon>
...
val emoticon = Emoticon()
emoticon.code = "new emoji"
emoticon.uri = "xxx"
mEmojiPack.emoticons.add(emoticon)
mEmojiPack.emoticons.add(emoticon)
mEmojiPack.isDataChanged = true
adapter?.notifyDataSetChanged()
変更されたemoticonPackのisDataChangedをtrueにすることは非常に重要です