Share via


AbsoluteLayout 확장

AbsoluteLayout 확장은 위치 지정을 지원하는 일련의 확장 메서드를 ViewAbsoluteLayout제공합니다.

확장은 다음 메서드를 제공합니다.

LayoutBounds

LayoutBounds 확장 메서드를 사용하면 의 위치와 크기를 View 설정할 수 있습니다AbsoluteLayout. 자세한 내용은 Microsoft 설명서를 참조 하세요.

LayoutFlags

LayoutFlags 확장 메서드를 사용하면 자식의 레이아웃 경계 위치와 크기 값이 크기에 비례한다는 플래그를 설정할 수 AbsoluteLayout있습니다. 자세한 내용은 Microsoft 설명서를 참조 하세요.

구문

두 메서드 LayoutBounds 를 모두 함께 사용하여 위치와 LayoutFlags 크기 View 가 절대인지 비례하는지 여부를 확인할 수 있습니다.

using CommunityToolkit.Maui.Markup;
using Microsoft.Maui.Layouts;

public class AbsoluteLayoutSamplePage : ContentPage
{
    public AbsoluteLayoutSamplePage()
    {
        Content = new AbsoluteLayout
        {
            Children =
            {
                new BoxView
                {
                    Color = Colors.Blue,
                }.LayoutFlags(AbsoluteLayoutFlags.PositionProportional)
                 .LayoutBounds(0.5, 0, 100, 25),

                new BoxView
                {
                    Color = Colors.Green,
                    WidthRequest = 25,
                    HeightRequest = 100,
                }.LayoutFlags(AbsoluteLayoutFlags.PositionProportional)
                 .LayoutBounds(0, 0.5),

                new BoxView
                {
                    Color = Colors.Pink,
                }.LayoutFlags(AbsoluteLayoutFlags.PositionProportional, AbsoluteLayoutFlags.SizeProportional)
                 .LayoutBounds(0, 0.5, 0.25, 0.25),

                new BoxView
                {
                    Color = Colors.Red,
                    WidthRequest = 25,
                    HeightRequest = 100,
                }.LayoutFlags(AbsoluteLayoutFlags.PositionProportional)
                 .LayoutBounds(new Point(1, 0.5)),

                new BoxView
                {
                    Color = Colors.Grey,
                }.LayoutFlags(AbsoluteLayoutFlags.PositionProportional)
                 .LayoutBounds(new Point(0.5, 1), new Size(100, 25)),

                new BoxView
                {
                    Color = Colors.Tan,
                }.LayoutFlags(AbsoluteLayoutFlags.All)
                 .LayoutBounds(new Rect(0.5, 0.5, 1d / 3d, 1d / 3d))
            }
        };
    }
}

예제

.NET MAUI 커뮤니티 도구 키트 샘플 애플리케이션 전체에서 이러한 확장 메서드가 작동하는 예제를 찾을 수 있습니다.

API

확장 메서드에 대한 소스 코드는 AbsoluteLayout .NET MAUI 커뮤니티 도구 키트 GitHub 리포지토리에서 찾을 수 있습니다.