Xamarin.Forms 사용자 지정 렌더러

Xamarin.Forms 사용자 인터페이스는 Xamarin.Forms 애플리케이션이 각 플랫폼에 적합한 모양과 느낌을 유지하도록 하는 대상 플랫폼의 네이티브 컨트롤을 사용하여 렌더링됩니다. 사용자 지정 렌더러를 사용하면 개발자가 이 프로세스를 재정의하여 각 플랫폼에서 컨트롤의 Xamarin.Forms 모양과 동작을 사용자 지정할 수 있습니다.

사용자 지정 렌더러 소개

사용자 지정 렌더러를 사용하면 Xamarin.Forms 컨트롤의 모양과 동작을 효과적으로 사용자 지정할 수 있습니다. 작은 스타일 변경 또는 정교한 플랫폼별 레이아웃 및 동작 사용자 지정에 사용할 수 있습니다. 이 문서에서는 사용자 지정 렌더러를 소개하고 사용자 지정 렌더러를 만드는 과정을 간략하게 설명합니다.

렌더러 기본 클래스 및 네이티브 컨트롤

모든 Xamarin.Forms 컨트롤에는 네이티브 컨트롤의 인스턴스를 만드는 각 플랫폼에 함께 제공되는 렌더러가 있습니다. 이 문서에는 각 Xamarin.Forms 페이지, 레이아웃, 보기 및 셀을 구현하는 네이티브 컨트롤 클래스와 렌더러가 나열됩니다.

항목 사용자 지정

Xamarin.FormsEntry 컨트롤을 사용하면 한 줄의 텍스트를 편집할 수 있습니다. 이 문서에서는 개발자가 자체적인 플랫폼별 사용자 지정을 통해 기본 네이티브 렌더링을 재정의할 수 있도록 Entry 컨트롤에 대한 사용자 지정 렌더러를 만드는 방법을 보여줍니다.

ContentPage 사용자 지정

ContentPage는 단일 보기를 표시하고 화면 대부분을 차지하는 시각적 요소입니다. 이 문서에서는 개발자가 자체적인 플랫폼별 사용자 지정을 통해 기본 네이티브 렌더링을 재정의할 수 있도록 ContentPage 페이지에 대한 사용자 지정 렌더러를 만드는 방법을 보여줍니다.

지도 핀 사용자 지정

Xamarin.Forms.Maps에는 각 플랫폼에서 네이티브 맵 API를 사용하는 맵을 표시하는 플랫폼 간 추상화 기능이 있어 사용자에게 친숙하고 빠른 맵 환경을 제공할 수 있습니다. 이 항목에서는 개발자가 고유한 플랫폼별 사용자 지정을 통해 기본 네이티브 렌더링을 재정의할 수 있도록 Map 컨트롤에 대한 사용자 지정 렌더러를 만드는 방법을 보여 줍니다.

ListView 사용자 지정

A Xamarin.FormsListView 는 데이터 컬렉션을 세로 목록으로 표시하는 뷰입니다. 이 문서에서는 네이티브 목록 컨트롤 성능을 보다 효과적으로 제어할 수 있도록 플랫폼별 리스트 컨트롤과 네이티브 셀 레이아웃을 캡슐화하는 사용자 지정 렌더러를 만드는 방법을 보여줍니다.

ViewCell 사용자 지정

A Xamarin.FormsViewCell 는 개발자 정의 뷰를 포함하는 또는 TableView해당 셀에 추가할 ListView 수 있는 셀입니다. 이 문서에서는 컨트롤 내에서 Xamarin.FormsListView 호스트되는 사용자 지정 렌더러를 ViewCell 만드는 방법을 보여 줍니다. 이렇게 하면 ListView를 스크롤하는 동안 Xamarin.Forms 레이아웃 계산이 반복적으로 호출되지 않습니다.

WebView 사용자 지정

A Xamarin.FormsWebView 는 앱에 웹 및 HTML 콘텐츠를 표시하는 보기입니다. 이 문서에서는 JavaScript에서 C# 코드를 호출할 수 있도록 WebView을(를) 확장하는 사용자 지정 렌더러를 만드는 방법을 설명합니다.

보기 구현

Xamarin.Forms 사용자 지정 사용자 인터페이스 컨트롤은 화면에 레이아웃과 컨트롤을 배치하는 데 사용되는 View 클래스에서 파생되어야 합니다. 이 문서에서는 디바이스 카메라에서 미리 보기 동영상 스트림을 표시하는 데 사용되는 Xamarin.Forms 사용자 지정 컨트롤의 사용자 지정 렌더러를 만드는 방법을 설명합니다.