gpt4 book ai didi

android - 如何使用 Crosswalk 长按获取 URL?

转载 作者:行者123 更新时间:2023-11-30 01:32:38 27 4
gpt4 key购买 nike

我注意到,当长按 XWalkView 中的链接时,什么结果也没有。我想处理链接上的长按,就像您在 Chrome 中看到的那样(当您长按蓝色链接时)。我不需要从你那里知道如何创建对话框,我想知道如何拦截长按事件。

(注意这是android相关的)

我不关心为此使用 JavaScript,但它必须工作。

我尝试使用 onLongClickListener 但无法从中获取 URL。

这是当前代码:

//...
private static Handler handler = new Handler();
private static Runnable longPressRunnable = new Runnable() {
@Override
public void run() {
Logging.logd("Long press detected");
}
};
//...
public static final View.OnTouchListener
mainOnTouchListener = new View.OnTouchListener() {
//...
@Override
public boolean onTouch(View view, MotionEvent motionEvent) {
switch(motionEvent.getAction()) {
case MotionEvent.ACTION_DOWN:
handler.postDelayed(longPressRunnable, 1200);
//...
break;
case MotionEvent.ACTION_UP:
handler.removeCallbacks(longPressRunnable);
//...
break;
case MotionEvent.ACTION_MOVE:
//...
handler.removeCallbacks(longPressRunnable);
break;
default: break;
}
return false;
}

请注意,XWalkView 支持HitTestResult,因此请避免告诉我使用它作为答案。

最佳答案

实际上,仅使用触摸监听器是不可能做到这一点的。我将不得不使用 javascript/jQuery 来处理它或寻找其他方法。我将其标记为已解决,因为我将按自己的方式行事,而这根本没有引起注意。

更新:

Crosswalk 终于添加了它。您可以在此处找到操作方法:https://github.com/xdevs23/Cornowser/blob/master/app/src/main/java/io/xdevs23/cornowser/browser/browser/xwalk/CrunchyWalkView.java#L109

代码 fragment (摘自上面的链接):

        // Thanks to chuan.liu (XWALK-7233) for the awesome example
setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
XWalkHitTestResult result = ((CrunchyWalkView) v).getHitTestResult();
XWalkHitTestResult.type resultType = result.getType();
if(result.getExtra() == null) return false;
switch (resultType) {
case IMAGE_TYPE:
onLongPress(result.getExtra(), result.getExtra(), true);
break;
case PHONE_TYPE:
break;
default:
onLongPress(result.getExtra(), result.getExtra(), false);
break;
}
return true;
}
});

关于android - 如何使用 Crosswalk 长按获取 URL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35537865/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com