본문 바로가기

FRAME WORK/Xamarin

[Xamarin] ios 기종에 맞춰 알아서 상하여백 생기게 하는법 - Safe Area

안드로이드만 테스트하면서 ui를 만들었는데 ios로 보니 문제가 생겼다.

 

 

안드로이드는 연두색 부분이 알아서 인식되서 회색영역에만 컨텐츠가 들어가는데

ios는 자동 인식이 안되서 컨텐츠가 다 겹쳐버렸다.

이는 아주 쉽게 해결할수있다.

 

아래의 코드를 페이지 최상단에 넣어주면된다.

xmlns:ios="clr-namespace:Xamarin.Forms.PlatformConfiguration.iOSSpecific;assembly=Xamarin.Forms.Core" 
ios:Page.UseSafeArea="true"

 

리소스 딕셔너리(ResourceDictionary) 의 경우 App.xaml에 넣어주면 프로젝트 내의 모든 컨텐츠 페이지에 공통으로 먹히니까 위의 코드도 App.xaml에 넣어주면 공통으로 먹힐줄알았는데 안먹힌다.

그래서 각 페이지에 일일이 넣어주었다. 아래처럼

 

 

위처럼 코드를 넣어주면 Safe Area가 기기별로 자동으로 잡힌다.

 

*공식 사이트 관련 페이지

https://learn.microsoft.com/ko-kr/xamarin/xamarin-forms/platform/ios/page-safe-area-layout

반응형