我正在制作一份注册表,其中需要一个复选框来同意条款和条件。所以问题是复选框的文本包含打开网页的链接(见下图)。TextView我想知道是否可以像使用一样使复选框可点击ClickableSpan。

到目前为止我已经使用以下代码完成了此操作:
\n\n以下方法接受字符串并返回SpannableString我设置为复选框的内容。
private SpannableString makeSpannable(String text)\n{\nString temp = text;\nPattern pattern = Pattern\n .compile("<a href=[\\\\\\"\']([\\\\.^>^<\\\\w:/]*)[\\\\\\"\']>([^>^<.]*)</a>");\nMatcher matcher = pattern.matcher(text);\nwhile (matcher.find())\n{\n temp = temp.replace(matcher.group(0), (matcher.group(2)));\n}\n\nSpannableString linkedString = new SpannableString(temp);\nmatcher = pattern.matcher(text);\nwhile (matcher.find())\n{\n\n final String href = matcher.group(1);\n\n int index = temp.indexOf(matcher.group(2));\n ClickableSpan clickable = new ClickableSpan() {\n\n @Override\n public void onClick(View widget)\n {\n loadLink(href);\n }\n };\n linkedString.setSpan(clickable, index, index\n + matcher.group(2).length(), 0);\n}\nreturn linkedString;\n}\nRun Code Online (Sandbox Code Playgroud)\n\n\n\n\nt.setText(makeSpannable(
\n"Ich akzeptiere die <a href=\'http://www.google.com\'>AGB\'s</a> und <a href=\'http://www.google.com\'>Datenschutzerkl\xc3\xa4rung</a> des Verlags"));
有人可以帮我吗?
\n| 归档时间: |
|
| 查看次数: |
939 次 |
| 最近记录: |