小菜最近需要对 TextView 进行校验,包括 URL / Phone / Email / Hashtags / Mentions 的判断,用的封装好的 GitHub:AutoLinkTextView ,整体效果很好,但是根据需求,单击与长按添加不同的效果,特意处理一下点击冲突。
默认的 AutoLinkTextView 只有 onClick 方法,自己写了一个 onLongClick 方法。
1. 添加 AutoLinkOnLongClickListener 接口;
2. 在 onTouch 方法中,修改 MotionEvent.ACTION_UP 中时间判断,超过500ms即长按;



Tips:URL 的正则表达式,还可以推荐另一个正则表达式:URL_PATTERN = "[http|https]+[://]+[0-9A-Za-z:/[-]_#[?][=][.][&]]*",目测大部分的淘宝链接都好用。
网友评论