繁体   English   中英

从Canvas绘图时,不会反映Webview的程序化滚动

Programmatic scroll of Webview isn't reflected when drawing from Canvas

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我正在从WebView的draw方法中提取帧并以编程方式滚动它。 问题是,无论我的位图有多大,我都只会基于其初始尺寸从WebView获取输出。 getHeight()返回1440的值,即使我将位图变大和/或滚动WebView,也只能从WebView中获得。 这是它的draw方法:

@Override
public void draw( Canvas canvas ) {
    int height = getHeight();
    bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
    newCanvas = new Canvas(bitmap);
    super.draw(newCanvas);
    bitmap.compress(Bitmap.CompressFormat.PNG, 100, stream);
    array.Buffer = stream.toByteArray();
    mPluginInterfaceBitmap.onFrameUpdate(array, width, height);
    stream.reset();
}

我正在像这样滚动Web视图:

mWebView.scrollBy(0,yScrollBy);

我知道它在滚动,因为在随后的帧中,我检查:

mWebView.getScrollY()

我的XML:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >
<com.export.ian.webviewtest android:id="@+id/web_view"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" />

我也尝试过增加webview的大小以匹配它的ContentHeight但是这永远都行不通,而且我不确定无限滚动网站如何工作。 我希望能够以编程方式滚动Web视图并提取用户在网页中看到的任何内容的框架。

这是滚动几下后的样子(忽略图像的角度) 在此处输入图片说明

1 个回复

最终从这里找到了答案:

您必须在片段中放大视图之前调用WebView.enableSlowWholeDocumentDraw()

1 CollectionView程序化滚动

我要执行的操作是在加载内容后立即将CollectionView滚动到最底端。 这是我的代码; 但它完全不起作用。 顺便说一句,我使用InputAccessoryView的粘性数据输入栏,如在iMessage中,并使用collectionView.keyboardDismiss ...

3 分别滚动2个div的程序化滚动

我有2个可滚动div,其中包含我要视觉对齐的id的对象-obj和ff位于不同的div中 现在发生的事情是滚动并不特定于保存该对象的div。 也就是说,两个div同时滚动。 我希望能够单独滚动div中的对象,希望仅使用Javascript/CSS. 希望这足够了。 添加:字段: h ...

4 程序化更改不会反映在knockout viewmodel中

使用javascript更改复选框的状态不符合MVVM的精神。 但我正在创建一个通用的JavaScript库,以便更好地查看标准控件,如复选框,单选按钮或选择框。 基于以下viewmodel: 但是当我以编程方式更改复选框的选中状态时,我遇到了与淘汰相关的问题: 更改不会出现 ...

5 程序化滚动触发悬停事件

我的li项目有mouseenter事件侦听器,而ul有keydown事件在列表项之间导航。 如果导航期间未查看列表项li , ul编程方式滚动ul 。 滚动触发li项上的mouseover事件。 我尝试在滚动之前先分离mouseover事件,然后再附加回去。 它不适用于Chrome和 ...

6 程序化 UIScrollView 不想滚动

开发人员,我知道这个问题在stackoverflow中问了很多时间。 但是我仍然无法以编程方式创建 uiscrollview,即使在情节提要中设置 uiscrollview 也很混乱,因为它会影响我设置自动布局时找到的另一个视图。 我的问题是我的滚动视图不想在容器视图内滚动。 我想我设置正确。 这是 ...

7 UWP中的ListView程序化滚动

我需要以编程方式滚动ListView。 实际上,我已经部分完成但是它的工作速度很快,而且与正常行为不同。 如何实现listview正常的垂直滚动行为? 我只需要垂直滚动。 在我的代码中,_scrollViewer是ListView的ScrollViewer,而drawingPanel是一 ...

8 检测程序化UIScrollView滚动的结束

我正在使用scrollToRowAtIndexPath在UITableViews中进行编程滚动,它不会触发scrollViewDidEndDecelerating。 检测滚动何时完成的好方法是什么? 我问,因为在我的代码中: 偶尔会在此滚动完成之前触发其他方法。 我想使用比pe ...

10 amStock(Flex)程序化滚动

我想以编程方式在水平轴上(即沿时间轴)滚动amcharts flex股票图。 我需要这样做,因为我需要一次滚动一个句点,并希望将其与键盘事件联系起来。 我在此处的文档中找不到任何内容: http : //flex.amcharts.com/stock_class_reference/ ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM