I’m using flutter to build a app with cesium. In my case, i want to stack some interactive buttons on top of the webview which embed the cesium(Just like the CSS position layout in Web Technology.).I’ve found a problem on IOS which works well on Android.When tap once the flutter element which on top of the cesium(webview), the cesium camera control became strange. When tap twice, the cesium camera control become unable to work.I had tried another webgl demo(http://madebyevan.com/webgl-water/).It work well.And i had tried another webview plugin, but i got the same result. So I guess it’s a error inside cesium.
Here’s the most simplify flutter main function and the corresponding screenshot:
import 'package:flutter/material.dart';
import 'package:webview_flutter/webview_flutter.dart';
//import 'package:flutter_inappwebview/flutter_inappwebview.dart';
void main() {
runApp(MaterialApp(
home: SafeArea(
child: Stack(
children: <Widget>[
WebView(
// work well
// initialUrl: 'http://madebyevan.com/webgl-water/',
// the most simplify cesium example that can reproduce the problem
initialUrl: 'https://sandcastle.cesium.com/standalone.html#c=bY9Pa8MwDMW/ivGpgyGz6+qGQq+FHQY7+aI6Wmuq2MFSUtJPvyS9jK26vaf3058RqxkT3aiancl0MweSNHTwtXqbYOOqDyUrpkw12JdtyPbVetGJqQnZrLVPXV+qmqHyBsApdT2jkrjTEK+kEEUWcIl69xv1bRpNandPNpnIKDJ3vgfmz3SnYBvv5vw/lAu2KZ8/RqqM0xK7vDXHhwkA3s3yOaml8Anrn8nzfxfVXt6dE8xtRFEmeBwIsXTujMxUJ/cD',
javascriptMode: JavascriptMode.unrestricted,
),
// the fake interactive button on top of cesium(tap here)
Positioned(
top: 100,
width: 200,
child: Container(
height: 50,
color: Colors.red,
),
),
],
),
),
));
}
My IOS device is iphoneX with IOS 13.4.1
Is this a bug in cesium? Could anyone tell me how to fix this problem?
Thanks a lot~