我正在使用AS3开发聊天应用程序。我是AS和flash的新手。我想在聊天中添加表情符号。因此,当用户键入":p"我想用他的短信中的图像替换它。我只是用图像标签来做到这一点。但是,图像不显示内联。它显示在下一行。
有一种简单的方法吗?
实施例: 目前 - >这是我的聊天 图像在这里
期望的结果 - >这是我的"图像在这里"聊天
示例代码
var abc:String="This is my :p chat";
abc.replace(":p", "<img src='url of the image' height='10' width='10'>"
答案 0 :(得分:0)
你试过了吗?
img{
display: inline;
}
我假设你已经知道通过AS3加载样式表了吗?
更新:
这样的事情应该有效:
var style:StyleSheet = new StyleSheet();
style.parseCSS("img{ display: inline; }");
// IMPORTANT: tf is whatever TextField instance you are using
tf.styleSheet = style;
var str:String = "<p>This is my :p chat</p>";
tf.htmlText = str.replace(":p", "<img src='url of the image' height='10' width='10'>");
答案 1 :(得分:0)
试试这个:
var _message = "Good to see u :) how are you";
chatTxt.htmlText = doReplace(_message);
function doReplace(msg):String
{
var _str = refDocument._baseURL + "/tool/assets/emotion/";
var _search:Array = [":)",";)"];
var _replace:Array = ["<img width='20' height='20' src='smile.png'>","<img width='20' height='20' src='wink.png'>"];
for (var i:int=0; i<_search.length; i++)
{
msg = msg.split(_search[i]).join(_replace[i]);
}
return msg;
}
确保chatTxt是TLF文本