【发布时间】:2013-12-05 19:57:37
【问题描述】:
我的 Android 应用中有一个 EditText 视图。我需要其中的“内部链接”,这意味着我需要一些按钮或在EditText 内跨度,并且使用onClick 到这个按钮我可以执行一些操作(而不是重定向到网页)。
我用ClickableSpan()这样实现了这个按钮
linkWord = "my link";
link = new SpannableString(linkWord);
cs = new ClickableSpan(){
private String w = linkWord;
@Override
public void onClick(View widget) {
wrd.setText(w);
}
};
link.setSpan(cs, 0, linkWord.length(), 0);
et.append(link);
为了使这个跨度可点击,我使用了
et.setMovementMethod(LinkMovementMethod.getInstance());
“内部链接”工作正常,但在使用et.setMovementMethod() 后,OnLongClick 菜单上的复制和粘贴项目被禁用。这是一个问题,因为我需要EditText 中的“链接”并同时从该视图复制文本。
我的想法是在监听器OnLongClickListener 中设置类似removeMovementMethod() 的东西来临时禁用“链接”功能并使用带有复制/粘贴的菜单,并在处理文本后再次打开setMovementMethod() 方法。但我不知道如何实现这一点。
你能帮帮我吗?您可能还有其他方法...
谢谢!
【问题讨论】:
标签: android hyperlink copy android-edittext