Git Product home page Git Product logo

gsyricktext's Introduction

gsyricktext's People

Contributors

carguo avatar carguosmall avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gsyricktext's Issues

RichEditText resolveInsertText

RichEditText的resolveInsertText方法 添加的listUser和listTopic 并未加入nameList和topicList,导致getReal系列的获取值发生错误

大佬,你这个库靠谱么 改得我好痛苦

null

关闭 解决了

@某人前输入@符号问题

在有@某人前,不管是@某人前中间有文本还有没有文本,输入@符号之后跳转选择@用户回来文本并没有填充上还有@符号并没有删除。但是在@某人后输入@符号之后跳转回来是正常的。请问作者这是怎么回事呢?谢谢!

与SpannableString 结合使用,表情解析不出来

emojiText = TextCommonUtils.getEmojiText(mContext, entity.getComment_content());
SpannableString spannableString = new SpannableString(mContext.getString(R.string.reply) + entity.getCommented_user_nick() + ":" + emojiText);
spannableString.setSpan(new ForegroundColorSpan(mContext.getColor(R.color.font_blue_v2)), 2, entity.getCommented_user_nick().length() + 2, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
holder.tvSayWhat.setText(spannableString);
代码实现的是回复评论的功能,eg: 回复XXX:内容+表情, 对XXX加了字体颜色,但是表情。。解析不出来了。这块怎么处理,求给个思路

@失效

[表情]@某人

表情后,紧接着@某人,@失效

有考虑过移植到flutter吗?

添加表情可能太难了,但是@某人、#话题#,这种应该有可操作性才对。我试过通过监听输入框,对比前后的文本、光标,来进行快捷删除、插入字符、移动光标。我是用搜狗输入法试的,本来也能勉强达到要求,但是后来发现有的输入法,打拼音的时候,拼音会先出现在输入框,用户确定后会替换成汉子,这样,就无法对比文本了。
大佬可以给一点指导意见吗?

表情高度问题

表情弹框的高度如何设置 我从写了这个表情库 为什么高度也没有改变 求赐教/...急急急

RichTextView不能匹配多个相同话题

输入多个相同话题不能只能匹配一个,匹配顺序有问题

修改如下TextCommonUtils 文件 的 getTopicText方法

修改成:

fun getTopicText(context: Context, listTopic: List?, content: String, textView: ITextViewShow?, clickable: Boolean,
color: Int, spanTopicCallBack: SpanTopicCallBack?): Spannable {
if (listTopic == null || listTopic.isEmpty())
return SpannableString(content)
val spannableString = SpannableString(content)
var indexStart = 0
val lenght = content.length
var hadHighLine = false
// val map = HashMap<String, String>()
var i = 0
while (i < listTopic.size) {
while (true) {
val index = content.indexOf("#" + listTopic[i].topicName + "#", indexStart) + 1
if (index > 0) {
val mathStart = index - 1
val indexEnd = index + listTopic[i].topicName.length
val hadAt = "#" == content.substring(mathStart, index) && "#" == content.substring(indexEnd, indexEnd + 1)
val matchEnd = indexEnd + 1
if (hadAt && (matchEnd <= lenght || indexEnd == lenght)) {
if (indexEnd >= indexStart) {
indexStart = indexEnd
}
hadHighLine = true
var clickTopicSpan: ClickTopicSpan? = null
if (textView != null) {
clickTopicSpan = textView.getCustomClickTopicSpan(context, listTopic[i], color, spanTopicCallBack!!)
}
if (clickTopicSpan == null) {
clickTopicSpan = ClickTopicSpan(context, listTopic[i], color, spanTopicCallBack)
}
spannableString.setSpan(clickTopicSpan, mathStart, if (indexEnd == lenght) lenght else matchEnd, Spanned.SPAN_MARK_POINT)
}
} else
break
}
i++
indexStart = 0
}
if (clickable && hadHighLine)
textView!!.setMovementMethod(LinkMovementMethod.getInstance())
return spannableString
}

给@的UserMode的name末尾添加一位空格,删除没有了再次确认的效果

我给添加空格是为了保持和微博相同的规则,即:@和空格之间为一个用户名。这个也主要是为了和ios的规则做兼容。
但是我发现name追加一个空格后缀后,@标签删除不在触发二次确认的效果(背景选中效果)。
然后我怀疑是空格的问题,继续追加了一个不可见字符\u2060(Unicode3.2 新增了 \u2060 用来表示零宽不换行空格),仍然不能解决这个问题。尝试在空格后再追加一个普通的汉字,发现也不行。
所以我猜测:这个@name+一个空格,在框架内有特殊的处理吗?还是这只是一个bug?

thanks。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.