Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/215.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 4.1下滚动视图中的SurfaceView_Android_Scrollview_Surfaceview - Fatal编程技术网

Android 4.1下滚动视图中的SurfaceView

Android 4.1下滚动视图中的SurfaceView,android,scrollview,surfaceview,Android,Scrollview,Surfaceview,问题就在这里。 出于性能方面的原因,我选择使用SurfaceView来绘制一个类似于表的表单,并且因为这些内容充满了数据,所以我使用ScrollView作为SurfaceView的父级 很高兴看到它在我的个人开发专用手机(HTC Desire HD 2.3.7)上运行良好,我尝试在我的公司开发专用手机(Google Nexus S 4.1.?)上测试它,然后在我的个人手机(HTC one X 4.1.1)上测试它 最后两个屏幕出现了问题,我的SurfaceView在大约80px的滚动后变成黑色,

问题就在这里。 出于性能方面的原因,我选择使用SurfaceView来绘制一个类似于表的表单,并且因为这些内容充满了数据,所以我使用ScrollView作为SurfaceView的父级

很高兴看到它在我的个人开发专用手机(HTC Desire HD 2.3.7)上运行良好,我尝试在我的公司开发专用手机(Google Nexus S 4.1.?)上测试它,然后在我的个人手机(HTC one X 4.1.1)上测试它

最后两个屏幕出现了问题,我的SurfaceView在大约80px的滚动后变成黑色,并返回到在这个80px下滚动时的样子(取决于屏幕大小)

为了避免停电,我在一些模拟器下进行了测试

从2.2(客户的愿望)到4.0.4,它工作得非常好

笑话是,根据4.2。。。它也有用

当然,只有低于4.1.x时SurfaceView才会变黑

这是我的SurfaceView代码,我刚刚从您可以找到的示例中复制


这个代码片段可能就是答案

if(VERSION.SDK_INT != VERSION_CODES.JELLY_BEAN)
{
    this.setZOrderOnTop(true);
}
但是这样做的问题是背景变黑了

我必须为这个特定的android版本绘制我在“背景”表面视图中绘制的网格

这不是一个好的解决方案,因为在此SurfaceView中绘制网格会破坏滚动的平滑度和缩放的收缩

if(VERSION.SDK_INT != VERSION_CODES.JELLY_BEAN)
{
    this.setZOrderOnTop(true);
}