C# Can';当小视图堆叠在顶部时,t滚动Xamarin.Forms滚动视图
我在绝对布局的顶部有一个图像和一些按钮,堆叠在滚动视图上。在项目之间有足够的空间来“向下触摸”滚动视图和滑动滚动,但是滑动滚动不起作用。然后我试着把它们堆在一个格子里,但问题是一样的。我做错了什么C# Can';当小视图堆叠在顶部时,t滚动Xamarin.Forms滚动视图,c#,xamarin.forms,xamarin.ios,scrollview,C#,Xamarin.forms,Xamarin.ios,Scrollview,我在绝对布局的顶部有一个图像和一些按钮,堆叠在滚动视图上。在项目之间有足够的空间来“向下触摸”滚动视图和滑动滚动,但是滑动滚动不起作用。然后我试着把它们堆在一个格子里,但问题是一样的。我做错了什么 <ContentPage.Content> <AbsoluteLayout LayoutFlags="All" LayoutBounds="0,0,1,1" BackgroundColor="Default"> <Grid AbsoluteLayo
<ContentPage.Content>
<AbsoluteLayout LayoutFlags="All" LayoutBounds="0,0,1,1" BackgroundColor="Default">
<Grid AbsoluteLayout.LayoutFlags="All" AbsoluteLayout.LayoutBounds="0,0,1,1">
<Grid.RowDefinitions>
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<ScrollView x:Name="ScoreScrollView" Orientation="Horizontal" ScrollX="{Binding ScoreScrollX}" AbsoluteLayout.LayoutFlags="All" AbsoluteLayout.LayoutBounds="0,0,1,1"
HorizontalScrollBarVisibility="Always" VerticalScrollBarVisibility="Never" BackgroundColor="White">
<AbsoluteLayout LayoutFlags="HeightProportional" BackgroundColor="LightGray">
<AbsoluteLayout x:Name="ScoreContainer" LayoutFlags="All" LayoutBounds="0,0,1,0.75" BackgroundColor="White">
<skia:SKCanvasView x:Name="ScoreCanvas" PaintSurface="PaintScore" IgnorePixelScaling="True" Scale="1.0"
AbsoluteLayout.LayoutFlags="None"
AbsoluteLayout.LayoutBounds="{Binding ScoreImageRect}"
BackgroundColor="Default"
/>
<skia:SKCanvasView x:Name="ScoreOverlayCanvas" PaintSurface="PaintScoreOverlay" IgnorePixelScaling="True" Scale="1.0"
AbsoluteLayout.LayoutFlags="None"
AbsoluteLayout.LayoutBounds="{Binding ScoreImageRect}"
/>
</AbsoluteLayout>
<AbsoluteLayout x:Name="VisualizationContainer" LayoutFlags="All" LayoutBounds="0,1,1,0.25"
BackgroundColor="Purple">
<skia:SKCanvasView x:Name="TimingViz" PaintSurface="PaintTiming" IgnorePixelScaling="True" Scale="1.0"
AbsoluteLayout.LayoutFlags="All"
AbsoluteLayout.LayoutBounds="0,0,1,1"
BackgroundColor="White"
/>
</AbsoluteLayout>
</AbsoluteLayout>
</ScrollView>
<AbsoluteLayout LayoutFlags="All" LayoutBounds="0,0,1,1">
<AbsoluteLayout x:Name="EvaluationStickyNote" LayoutFlags="None" LayoutBounds="32,0,150,150" Rotation="-15"
IsVisible="False">
<Image Source="{Binding StickyNoteImage}"
AbsoluteLayout.LayoutFlags="All"
AbsoluteLayout.LayoutBounds="0,0,1,1" />
<Label LineBreakMode="WordWrap"
AbsoluteLayout.LayoutFlags="All"
AbsoluteLayout.LayoutBounds="0.5,0.5,0.8,0.8"
Text="{Binding EvaluationText}"
FontSize="20"
TextColor="Blue">
</Label>
</AbsoluteLayout>
</AbsoluteLayout>
<StackLayout IsVisible="True" Orientation="Vertical" AbsoluteLayout.LayoutFlags="WidthProportional" AbsoluteLayout.LayoutBounds="0,0,1,32" BackgroundColor="Default">
<StackLayout x:Name="TopButtons" Orientation="Horizontal" VerticalOptions="Start" HorizontalOptions="CenterAndExpand" BackgroundColor="Default">
<StackLayout IsVisible="False" Orientation="Horizontal" HorizontalOptions="Start">
<!--<Button Image="{Binding HomeIcon}" Clicked="Home"></Button>-->
<!--<Button Image="{Binding FeedbackIcon}" Clicked="FeedBack"></Button>-->
</StackLayout>
<StackLayout x:Name="MetronomeGroup" Orientation="Horizontal" HorizontalOptions="Center">
<Stepper x:Name="MetronomeStepper" Minimum="20" Maximum="300" Increment="2" Value="{Binding MetronomeBpm}"></Stepper>
<Entry Text="{Binding MetronomeBpmText}" Completed="MetronomeBpmEntry_OnTextChanged"></Entry>
<Label Text="bpm"></Label>
<ImageButton Source="{Binding MetronomeIcon}" Clicked="ToggleMetronome" Aspect="AspectFit" HeightRequest="32"></ImageButton>
</StackLayout>
<!--<Button Image="{Binding HamburgerIcon}" Clicked="ToggleHamburger"></Button>-->
</StackLayout>
<Label x:Name="MidiWarningLabel" VerticalOptions="End" HorizontalOptions="CenterAndExpand"></Label>
</StackLayout>
</Grid>
</AbsoluteLayout>
</ContentPage.Content>
一旦滚动视图
被包装在堆栈布局
中,且水平选项
和垂直选项
都设置为“FillAndExpand”
(以及设置绝对布局.
属性),滚动就会工作,而不是将滚动视图
作为绝对布局的直接子级。无法滚动与绝对布局中覆盖滚动视图的其他视图无关
<ContentPage.Content>
<AbsoluteLayout LayoutFlags="All" LayoutBounds="0,0,1,1" BackgroundColor="Default">
<StackLayout AbsoluteLayout.LayoutBounds = "0,0,1,1" AbsoluteLayout.LayoutFlags = "All">
<ScrollView x:Name="ScoreScrollView" Orientation="Horizontal" ScrollX="{Binding ScoreScrollX}"
HorizontalOptions="FillAndExpand" VerticalOptions="FillAndExpand"
HorizontalScrollBarVisibility="Always" VerticalScrollBarVisibility="Never"
BackgroundColor="White">
<AbsoluteLayout HorizontalOptions="FillAndExpand" VerticalOptions="FillAndExpand" LayoutFlags="HeightProportional" BackgroundColor="LightGray">
<AbsoluteLayout x:Name="ScoreContainer" LayoutFlags="All" LayoutBounds="0,0,1,0.75" BackgroundColor="White">
. . . .
</AbsoluteLayout>
<AbsoluteLayout x:Name="VisualizationContainer" LayoutFlags="All" LayoutBounds="0,1,1,0.25"
BackgroundColor="Purple">
<skia:SKCanvasView x:Name="TimingViz" PaintSurface="PaintTiming" IgnorePixelScaling="True" Scale="1.0"
AbsoluteLayout.LayoutFlags="All"
AbsoluteLayout.LayoutBounds="0,0,1,1"
BackgroundColor="White"
/>
</AbsoluteLayout>
</AbsoluteLayout>
</ScrollView>
</StackLayout>
<AbsoluteLayout LayoutFlags="All" LayoutBounds="0,0,1,0.25">
<AbsoluteLayout x:Name="EvaluationStickyNote"
LayoutFlags="None"
LayoutBounds="32,16,150,150"
IsVisible="False">
. . . .
</AbsoluteLayout>
</AbsoluteLayout>
<StackLayout IsVisible="True" Orientation="Vertical" AbsoluteLayout.LayoutFlags="WidthProportional" AbsoluteLayout.LayoutBounds="0,0,1,32" BackgroundColor="Default">
. . . .
</StackLayout>
</AbsoluteLayout>
</ContentPage.Content>
. . . .
. . . .
. . . .
能否显示一张图像,这将很有帮助。