代码之家  ›  专栏  ›  技术社区  ›  Mansa

Xamarin子级添加多个AbsoluteLayoutFlags

  •  1
  • Mansa  · 技术社区  · 6 年前

    我知道在XAML中这是可能的:

    StackLayout BackgroundColor="White"
                Orientation="Horizontal" 
                HorizontalOptions="FillAndExpand"
                AbsoluteLayout.LayoutBounds="0, 0, 1, 90"
                AbsoluteLayout.LayoutFlags="PositionProportional, WidthProportional">
    

    layout.Children.Add(topMenu(), new Rectangle(0, 0, 1, 90), AbsoluteLayoutFlags.PositionProportional);
    

    希望得到帮助并提前感谢:-)

    1 回复  |  直到 6 年前
        1
  •  2
  •   Arvind Chourasiya    6 年前

    只需在标志之间添加或运算符

    layout.Children.Add(topMenu, new Rectangle(0, 0, 1, 90), AbsoluteLayoutFlags.PositionProportional|AbsoluteLayoutFlags.SizeProportional|AbsoluteLayoutFlags.SizeProportional);
    

    您可以附加 | 运算符如何为 AbsoluteLayoutFlags enum . 或者你可以试试下面的

    您可以添加 任何一个单独控制你需要多少。看看这个示例代码片段

    var layout = new AbsoluteLayout
    {    
        BackgroundColor = Color.Blue.WithLuminosity(0.9),
        VerticalOptions = LayoutOptions.FillAndExpand
    };    
    
    var topMenu = new Label
    {
        Text = "Left",
        TextColor = Color.Black
    };
    
    AbsoluteLayout.SetLayoutFlags(topMenu,
    AbsoluteLayoutFlags.None|AbsoluteLayoutFlags.PositionProportional);
    
    AbsoluteLayout.SetLayoutBounds(topMenu,
    new Rectangle(0, 0, 1, 90));
    
    layout.Children.Add(topMenu);