首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android从Webview中移除焦点

Android从Webview中移除焦点
EN

Stack Overflow用户
提问于 2021-03-07 02:53:04
回答 1查看 193关注 0票数 0

我在我的webview中有webview内容,它就像一个图表;

代码语言:javascript
复制
<html>
<head>
    <style type="text/css">
        body {
            font-family: Roboto;
            font-size: 0;
            padding: 0;
            margin: 0;
        }

        #graph {
            width: 100%;
            height: 100%;
        }

        #graph li {
            background: #19bafc;
            display: inline-block;
            margin-left: 6px;
            width: calc(5% - 5.7px);
            height: 100%;
            border-radius: 3px;
        }

        #graph li:first-child {
            margin-left: 0;
        }

        #graph .red-1 {
            background: #fbb75e;
        }

        #graph .red-2 {
            background: #fb8f76;
        }

        #graph .red-3 {
            background: #fa7252;
        }

        #graph li:hover {}

        #graph li .tooltip {
            background: #fff;
            font-size: 12px;
            box-shadow: 0 1px 1px rgba(0,0,0,.04);
            border: 1px solid rgba(0, 0, 0, 0.07);
            padding: 8px;
            border-radius: 3px;
            display: none;
            position: fixed;
            top: calc(50% - 25px);
            left: calc(50% - 78px);
            font-weight: 500;
        }

        #graph li:hover .tooltip {
            display: block;
            opacity: 1 !important;
        }

        #graph li .tooltip .date {
            display: block;
            margin-bottom: 6px;
            color: #97b8c6;
            font-weight: 400;
        }
    </style>
</head>
<body>
    <div>
        <div id="graph">
            <li><div class="tooltip"><span class="date">05/03 15.20 / 05.03 15.34</span>100% Uptime</div></li>
            <li><div class="tooltip"><span class="date">05/03 15.20 / 05.03 15.34</span>99% Uptime</div></li>
            <li class="red-1"><div class="tooltip"><span class="date">05/03 15.20 / 05.03 15.34</span>13% Uptime</div></li>
            <li><div class="tooltip"><span class="date">05/03 15.20 / 05.03 15.34</span>98% Uptime</div></li>
            <li><div class="tooltip"><span class="date">05/03 15.20 / 05.03 15.34</span>97% Uptime</div></li>
            <li><div class="tooltip"><span class="date">05/03 15.20 / 05.03 15.34</span>95% Uptime</div></li>
            <li><div class="tooltip"><span class="date">05/03 15.20 / 05.03 15.34</span>98.34% Uptime</div></li>
            <li class="red-2"><div class="tooltip"><span class="date">05/03 15.20 / 05.03 15.34</span>56% Uptime</div></li>
            <li><div class="tooltip"><span class="date">05/03 15.20 / 05.03 15.34</span>34% Uptime</div></li>
            <li><div class="tooltip"><span class="date">05/03 15.20 / 05.03 15.34</span>45% Uptime</div></li>
            <li><div class="tooltip"><span class="date">05/03 15.20 / 05.03 15.34</span>55% Uptime</div></li>
            <li><div class="tooltip"><span class="date">05/03 15.20 / 05.03 15.34</span>100% Uptime</div></li>
            <li class="red-1"><div class="tooltip"><span class="date">05/03 15.20 / 05.03 15.34</span>34% Uptime</div></li>
            <li><div class="tooltip"><span class="date">05/03 15.20 / 05.03 15.34</span>67% Uptime</div></li>
            <li><div class="tooltip"><span class="date">05/03 15.20 / 05.03 15.34</span>45% Uptime</div></li>
            <li class="red-2"><div class="tooltip"><span class="date">05/03 15.20 / 05.03 15.34</span>23% Uptime</div></li>
            <li class="red-3"><div class="tooltip"><span class="date">05/03 15.20 / 05.03 15.34</span>45% Uptime</div></li>
            <li><div class="tooltip"><span class="date">05/03 15.20 / 05.03 15.34</span>35% Uptime</div></li>
            <li><div class="tooltip"><span class="date">05/03 15.20 / 05.03 15.34</span>56% Uptime</div></li>
            <li><div class="tooltip"><span class="date">05/03 15.20 / 05.03 15.34</span>76% Uptime</div></li>
        </div>
    </div>
</body>
</html>

我使用的是webview;

代码语言:javascript
复制
    <WebView
      android:id="@+id/graph"
      android:layout_width="match_parent"
      android:layout_height="75dp"
      android:layout_marginTop="10dp" />

graph = findViewById(R.id.graph);
graph.loadUrl(URL);

它工作得很好,但我的问题是:当我在webview上触摸一个li时,工具提示是显示的,但即使我点击一些可点击的东西,如按钮或EditText,WebView也不会失去悬停和工具提示的停顿。

我读了所有关于focus的东西,但是我不能解决我的问题。

EN

回答 1

Stack Overflow用户

发布于 2021-03-07 03:10:51

如果我完全理解你的问题,你应该处理android中的焦点丢失,并将其传递给webview,这样webview就可以被建议并从元素中丢失焦点。

要实现这一点,你应该在你的网页中创建一个jQuery函数来清除焦点:

代码语言:javascript
复制
    function clear_focus()
{
 $( "body" ).focus();
}

然后,无论您在何处单击webview以外的元素,例如编辑框。它应该运行此函数以在webview中运行JavaScript函数:

代码语言:javascript
复制
myWebView.loadUrl("javascript:clear_focus()");
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66509481

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档