Gui*_*ume 6 android hyperlink textview
正如标题所解释的那样,我想添加链接给我TextView,这两个警告:
我希望链接作用于一部分,而TextView不是完整的部分(类似于AHTML中的锚点).
我希望链接指向我的代码中的操作,而不是网站.我可以在我的活动中定义一个方法,或者实现一个方法OnClickListener,并在单击该特定链接时执行该方法.
到目前为止,我成功地使用以下方法将电话号码,地址,网站和电子邮件转换为专用外部链接:
Linkify.addLinks(message, Linkify.ALL);
Run Code Online (Sandbox Code Playgroud)
我想要内部链接(对我的方法)类似的东西,可以定义自定义链接.
此外,使用具有内部链接和Web视图的网页实际上不是一个选项,因为我已经定义了几个复杂的布局,并且必须修改整个应用程序和概念将是一个非常痛苦...
任何的想法?
编辑: Kabuko给了我一个非常好的解决方案,这正是我实现它的方式:
final TextView descriptionTextView = (TextView) findViewById(R.id.description);
final Spannable span = Spannable.Factory.getInstance().newSpannable("the full text for the view");
span.setSpan(new ClickableSpan() {
@Override
public void onClick(View widget) {
Toast.makeText(StartEventActivity.this, "LINK CLICKED", Toast.LENGTH_SHORT).show();
}
}, 1, 20, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); // 1 and 20 to be replaced with actual index of start and end of the desired link
descriptionTextView.setText(span);
descriptionTextView.setMovementMethod(LinkMovementMethod.getInstance());
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1948 次 |
| 最近记录: |