xamarin.forms - 层次结构 xamarin 形式
解决方案
我建议您使用Grid来实现图像上的布局。
这是一个如何使用 Grid 来实现所需层次结构的示例:
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
//TOP
<StackLayout Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="4" HorizontalOptions="Center">
<Image Source="image_top" />
</StackLayout>
//CENTER
<StackLayout Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="2" HorizontalOptions="Center">
<Image Source="image_center_left" />
</StackLayout>
<StackLayout Grid.Row="1" Grid.Column="3" Grid.ColumnSpan="2" HorizontalOptions="Center">
<Image Source="image_center_right" />
</StackLayout>
//BOTTOM
<StackLayout Grid.Row="2" Grid.Column="0" HorizontalOptions="Center">
<Image Source="image_bottom_far_left" />
</StackLayout>
<StackLayout Grid.Row="2" Grid.Column="1" HorizontalOptions="Center">
<Image Source="image_bottom_left" />
</StackLayout>
<StackLayout Grid.Row="2" Grid.Column="2" HorizontalOptions="Center">
<Image Source="image_bottom_right" />
</StackLayout>
<StackLayout Grid.Row="2" Grid.Column="3" HorizontalOptions="Center">
<Image Source="image_bottom_far_right" />
</StackLayout>
</Grid>
注意:如果要使用连接层次结构的线(假设它们是图像),则需要添加 2 个额外的行并将它们添加到图像行之间。
推荐阅读
- css - 内联 SVG - 如何使用样式属性设置背景图像(在 Angular 5 中)
- python - Keras One 热门输入
- sql - 为什么这个查询会导致 TABLE ACCESS FULL 而不是 FULL INDEX SCAN?
- aws-lambda - 在 AWS lambda 中连接 MySQL 的最佳方式
- r - 如何对所有数据列进行单向方差分析?
- php - 在 php/html 文档中使用 Css
- c# - 尝试捕捉 - 好的做法?运行时的用户输入
- c# - 包含 C# 以外的代码文件
- dart - Flutter:如何获取http请求的上传/下载进度
- architecture - 软件架构师能否预测微服务架构将如何随着时间的推移而成熟?