首先感谢您对此主题的关注 .

这是我的问题:我在ScrollView布局中有一个Google Map . 在iOS上一切正常,ScrollView滚动并且 Map 完全可用 .

但是在android上,当从 Map 引发触摸事件时,滚动视图的手势事件将首先触发并将解除 Map 之一 . 因此,无法在滚动视图中使用 Map .

为了解决这个问题,我想简单地禁用一个可以处理的scrollview 's event so the map' . 经过多次搜索后,我发现这个question可以做到这一点,但根本没有效果 .

有我的代码:

@ViewChild("mainScrollView") mainScrollView : ElementRef;


ngAfterViewInit() {
    this.disableScrollView()
}

private disableScrollView(){

    const scrollView: ScrollView = this.mainScrollView.nativeElement;

    console.log("scroll view :")
    console.dir(scrollView)

    if (isAndroid) {
        console.log("is Android")
        scrollView.android.requestDisallowInterceptTouchEvent(true);
    }
}

更全局,我知道这个问题会影响ScrollView中具有手势的每个布局 . 因此,有一个解决方法来解决这个问题会很棒!

PS:我的项目正在使用Angular处理Nativescript 3.3.0 .