我想弄清楚如何在Facebook应用和Google Hangouts应用上实现表情符号(表情符号)选择。
我创建了一个像表情符号一样的软键盘。但后来我认为像facebook,skype等应用程序会对它做出反应。许多表情符号键盘应用程序正在使用unicode发送他们的图像,这些代码是通用的。
我认为此类型的键盘只能在此应用中使用,而不适用于其他应用或操作系统。
此键盘不使用Unicode序列,而只使用本地图像资源。
我的问题是
如果我从本地数据库添加我自己的表情符号,如果我不使用UniCode并通过创建一个可跨越的ImageSpan发送它。这些图像可以发送到应用程序,Facebook和Skype上。
因为我正在创建新的表情符号图像。这是工作吗?
Just need suggestion or
Does anyone have an idea of how this can be implemented.
或者可以将我的表情符号图标转换为UNi代码
答案 0 :(得分:2)
请参阅此link
<强> Softkeyboard.java 强>
if (primaryCode == 32) {
LayoutInflater layoutInflater = (LayoutInflater) getBaseContext().getSystemService(LAYOUT_INFLATER_SERVICE);
View popupView = layoutInflater.inflate(R.layout.popup, null);
popupWindow = new EmojiconsPopup(popupView, this);
// final PopupWindow popupWindow = new PopupWindow();
popupWindow.setSizeForSoftKeyboard();
popupWindow.setSize(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT);
popupWindow.showAtLocation(mInputView.getRootView(), Gravity.BOTTOM, 0, 0);
// Bring soft keyboard up : NOT WORKING
final InputMethodManager mInputMethodManager = (InputMethodManager) getBaseContext()
.getSystemService(Context.INPUT_METHOD_SERVICE);
mInputMethodManager.showSoftInput(popupView, 0);
// If the text keyboard closes, also dismiss the emoji popup
popupWindow.setOnSoftKeyboardOpenCloseListener(new OnSoftKeyboardOpenCloseListener() {
@Override
public void onKeyboardOpen(int keyBoardHeight) {
}
@Override
public void onKeyboardClose() {
if (popupWindow.isShowing())
popupWindow.dismiss();
}
});
popupWindow.setOnEmojiconClickedListener(new OnEmojiconClickedListener() {
@Override
public void onEmojiconClicked(Emojicon emojicon) {
mComposing.append(emojicon.getEmoji());
commitTyped(getCurrentInputConnection());
customToast("" + emojicon.getEmoji());
}
});
popupWindow.setOnEmojiconBackspaceClickedListener(new OnEmojiconBackspaceClickedListener() {
@Override
public void onEmojiconBackspaceClicked(View v) {
KeyEvent event = new KeyEvent(0, 0, 0, KeyEvent.KEYCODE_DEL, 0, 0, 0, 0, KeyEvent.KEYCODE_ENDCALL);
customToast(" " + event);
handleBackspace();
}
});
给你一些帮助..