Android :在文本视图中使用 JavaScript
Android : Use javascript in textview
我有一个视图页机,每个页面都有一个文本视图,我在我的文本视图中解析了html文档(没有javascript),我在这个文档中有很多锚标签,我想在锚标签点击中调用JavaScript函数。例如
<a class="pginternal" tag="{http://www.w3.org/1999/xhtml}a" onclick="GoToPageNumber(186)" style="color:Blue !important;cursor:pointer !important;text-decoration:underline !important">THE VAMPIRE'S SIXTH STORY — In Which Three Men Dispute about a Woman.</a>
有"GoToPageNumber"事件,如何在单击此事件时更改寻呼机项目位置。
我已经找到了解决方案。将移动方法设置为文本视图。
textview.setMovementMethod(LinkMovementMethodExt.getInstance());
public static class LinkMovementMethodExt extends LinkMovementMethod
{
private static LinkMovementMethod sInstance;
public static MovementMethod getInstance()
{
if (sInstance == null)
{
sInstance = new LinkMovementMethodExt();
}
return sInstance;
}
int off = 0;
@Override
public boolean onTouchEvent(TextView widget, Spannable buffer, MotionEvent event)
{
int action = event.getAction();
if (action == MotionEvent.ACTION_UP || action == MotionEvent.ACTION_DOWN)
{
try {
int x = (int) event.getX();
int y = (int) event.getY();
x -= widget.getTotalPaddingLeft();
y -= widget.getTotalPaddingTop();
x += widget.getScrollX();
y += widget.getScrollY();
Layout layout = widget.getLayout();
int currentLine = layout.getLineForVertical(y);
int totalLine = layout.getLineCount();
off = layout.getOffsetForHorizontal(currentLine, x);
} catch (Exception e) {
e.printStackTrace();
}
try {
URLSpan[] urls = buffer.getSpans(off, off+1, URLSpan.class);
for(URLSpan span : urls)
{
String urlStr = span.getURL();
Log.v("URL SPAN", urlStr);
}
} catch (Exception e) {
e.printStackTrace();
}
}
return true;
}
}
你不能在 TextView 中运行 JavaScript。 您将不得不使用单击侦听器在 java 中执行所有操作。 如果您只想处理对 TextView 中链接的单击,则需要学习如何使用 Spannable。 您可以在此处获得帮助。
相关文章:
- 如何使用javascript从主svg对象动态创建svg视图框
- 如何包含特定于每个视图angularjs的javascript文件
- 如何在Ionic Android中将Javascript注入到web视图中
- 如何在MVC5中ajax调用的部分视图中引用外部javascript
- 在CodeIgniter视图中将Javascript或jQuery代码作为PHP文件编写可以吗
- 我应该将MVC视图特定的javascript文件放在哪个文件夹中
- 树视图javascript的反向级别
- node.js/javascript/couchdb视图到关联数组似乎不起作用
- 将c#视图模型转换为javascript模型时转义HTML标记
- 如何访问Web2py'中python代码中的JavaScript变量;s视图
- MVC Razor 从 javascript 视图中的控制器获取值
- 使用CakePHP生成Javascript视图块
- 在 Rails 中测试 JavaScript 视图
- 在Couchbase JavaScript视图中是否有可能的全局变量
- Couchbase Java API和javascript视图未返回特定密钥的值
- 主干javascript视图未重新呈现
- 在可嵌入javascript视图中使用mislav_will_paginate
- 将CouchDB javascript视图转换为erlang
- Javascript视图HTML切换
- 如何使用 JavaScript 视图和控制器创建弹出窗口,没有 html