Xamarin.ios의 사용자 인터페이스 컨트롤User Interface Controls in Xamarin.iOS

이 문서에서는 가장 일반적인 iOS 사용자 인터페이스 컨트롤 중 일부를 소개 하 고 사용 하는 방법을 소개 합니다.This document introduces some of the most common iOS user interface controls and how to use them.


IOS 8부터 UIAlertController는 이제 더 이상 사용 되지 않는 Uialertcontroller 및 Uialertcontroller를 모두 완료 했습니다.Starting with iOS 8, UIAlertController has completed replaced UIActionSheet and UIAlertView both of which are now deprecated.


UIButton 클래스는 iOS 화면에서 다양 한 종류의 단추를 표시 하는 데 사용 됩니다.The UIButton class is used to represent various different styles of button in iOS screens. 이 섹션에서는 iOS의 단추 작업에 대 한 다양 한 옵션을 소개 합니다.This section introduces the different options for working with buttons in iOS.

컬렉션 뷰Collection Views

UICollectionView 클래스에서 제공 되는 컬렉션 뷰는 레이아웃을 사용 하 여 화면에 여러 항목을 표시 하는 iOS 6의 새로운 개념입니다.Collection Views, available in the UICollectionView class, are a new concept in iOS 6 that introduce presenting multiple items on the screen using layouts. 항목을 만들고 해당 항목과 상호 작용 하는 UICollectionView에 데이터를 제공 하는 패턴은 iOS 개발에 일반적으로 사용 되는 것과 동일한 위임 및 데이터 소스 패턴을 따릅니다.The patterns for providing data to a UICollectionView to create items and interact with those items follow the same delegation and data source patterns commonly used in iOS development.


앱에 이미지를 추가 하려면 먼저 두 단계가 필요 합니다. 먼저 프로젝트에 이미지를 추가 합니다. 그런 다음 컨트롤 및 코드를 추가 하 여 화면에 표시 합니다.Adding images to your app requires two steps: first, add the images to your project; then, add controls and code to display them on a screen. Xamarin.ios에서 이미지를 처리 하는 방법에 대 한 자세한 내용은 이미지 작업 문서를 참조 하세요.Refer to the Working with Images article for more detailed coverage of image handling in Xamarin.iOS.

수동 카메라 컨트롤Manual Camera Controls

IOS 8의 AVFoundation Framework에서 제공 하는 수동 카메라 컨트롤을 사용 하 여 모바일 응용 프로그램이 iOS 장치의 카메라를 완전히 제어할 수 있습니다.The Manual Camera Controls, provided by the AVFoundation Framework in iOS 8, allow a mobile application to take full control over an iOS device's camera. 이 세분화 된 제어 수준을 사용 하면 스틸 이미지 또는 비디오를 가져오는 동안 카메라의 매개 변수를 조정 하 여 전문가 수준의 카메라 응용 프로그램을 만들고 음악가 컴퍼지션을 제공할 수 있습니다.This fine-grained level of control can be used to create professional level camera applications and provide artist compositions by tweaking the parameters of the camera while taking a still image or video.


맵은 모든 최신 모바일 운영 체제에서 일반적으로 사용할 수 있는 기능입니다.Maps are a common feature in all modern mobile operating systems. iOS는 맵 키트 프레임 워크를 통해 기본적으로 매핑 지원을 제공 합니다.iOS offers mapping support natively through the Map Kit framework. 지도 키트를 사용 하면 응용 프로그램에서 풍부한 대화형 지도를 쉽게 추가할 수 있습니다.With Map Kit, applications can easily add rich, interactive maps. 이러한 맵은 지도의 위치를 표시 하는 주석을 추가 하 고 임의 모양의 그래픽을 표시 하는 등의 다양 한 방법으로 사용자 지정할 수 있습니다.These maps can be customized in a variety of ways, such as adding annotations to mark locations on a map, and overlaying graphics of arbitrary shapes. 지도 키트에는 장치의 현재 위치를 표시 하는 기본 지원도 있습니다.Map Kit even has built-in support for showing the current location of a device.


UILabel 컨트롤은 단일 및 여러 줄 읽기 전용 텍스트를 표시 하는 데 사용 됩니다.The UILabel control is used for displaying single and multi-line, read only text.

선택 및 날짜 선택기Pickers and Date Pickers

선택 컨트롤은 선택 된 값이 강조 표시 된 스크롤 가능한 값 목록을 포함 하는 ' 휠 유사 ' 컨트롤을 표시 합니다.The Picker control displays 'wheel-like' control that contains a scrollable list of values with the selected value being highlighted. 사용자가 휠을 회전 하 여 원하는 옵션을 선택 합니다.Users rotate the wheel to select the option they want.

에서 날짜 및/또는 시간을 설정 하도록 선택 하는 한 가지 특정 사용자 사례가 있습니다.One specific user case for pickers it to set the date and / or time. 이 Apple에를 제공 하기 위해 UIDatePicker 라는 UIPickerView 클래스의 사용자 지정 하위 클래스를 만들었습니다.To provide for this Apple has created a custom subclass of the UIPickerView class called UIDatePicker.

진행률 및 활동 표시기Progress and Activity Indicators

iOS는 앱에서 진행률을 나타내는 두 가지 주요 방법, 즉 활동 표시기 (특정 네트워크 활동 표시기 포함) 및 진행률 표시줄을 제공 합니다.iOS provides two main ways to indicate progress in your app: Activity Indicators (including a specific network activity indicator) and Progress Bars.

검색 막대Search Bars

UISearchBar는 값 목록을 검색 하는 데 사용 됩니다.The UISearchBar is used to search through a list of values.

슬라이더, 스위치 및 분할된 컨트롤Sliders, Switches, and Segmented Controls

슬라이더 컨트롤을 사용 하면 범위 내에서 숫자 값을 간단히 선택할 수 있습니다.The slider control allows for simple selection of a numeric value within a range. iOS는 다른 플랫폼에서 라디오 단추로 표현할 수 있는 부울 입력으로 UISwitch를 사용 합니다.iOS uses the UISwitch as a boolean input that may be represented by a radio-button on other platforms. 분할 된 컨트롤은 사용자가 적은 수의 옵션을 조작할 수 있도록 구성 된 방법입니다.A Segmented Control is an organized way to allow users to interact with a small number of options.

스택 보기Stack View

UIStackView(Stack View control)는 Auto Layout 및 Size 클래스의 강력한 기능을 활용 하 여 iOS 장치의 방향 및 화면 크기에 동적으로 응답 하는 가로 또는 세로로 하위 뷰 스택을 관리 합니다.The Stack View control (UIStackView) leverages the power of Auto Layout and Size Classes to manage a stack of subviews, either horizontally or vertically, which dynamically responds to the orientation and screen size of the iOS device.

테이블 및 셀Tables and Cells

이 섹션에서는 테이블을 만들고 표시 하는 데 사용 되는 클래스를 소개 하 고 Xamarin.ios에서 사용 하는 방법에 대 한 예제를 제공 합니다.his section introduces the classes used to create and display tables then provides examples of how to use them in Xamarin.iOS. 테이블에 대 한 기본 모양을 사용 하 고, 레이아웃을 사용자 지정 하며, 편집을 구현 하 고 Xamarin iOS Designer를 사용 하 여 테이블을 시각적으로 디자인 하는 방법을 다룹니다.It will cover using the default appearance for tables, customizing the layout, implementing editing and using the Xamarin iOS Designer to design a table visually. 경우에 따라 표시 되는 행의 목록 (예: 음악 앱) 및 테이블 컨트롤을 인식 하기 어려운 다른 시간 (예: 연락처 앱에서 편집 또는 메시지의 대화)이 표시 됩니다.Sometimes the display is obviously a list of rows (such as the Music app) and other times it is difficult to recognize the table control (such as editing in the Contacts app, or a conversation in Messages app).

텍스트 입력Text Input

사용자 텍스트를 허용 하는 것은 여러 줄의 편집 가능 텍스트에 대 한 한 줄 입력 및 UITextView의 UITextField 사용 하 여 수행 됩니다.Accepting user text input is accomplished with the UITextField for single-line inputs and UITextView for multi-line editable text. 이러한 컨트롤 중 하나를 화면으로 끌어 온 다음 두 번 클릭 하 여 초기 텍스트를 설정할 수 있습니다.You can drag either of these controls onto a screen and double-click to set the initial text.

탭 표시줄 및 탭 표시줄 컨트롤러Tab Bars and Tab Bar Controllers

탭 탐색 UI를 사용 하는 iOS 응용 프로그램은 UITabBarController 클래스를 사용 하 여 빌드됩니다.iOS applications using a tab-navigation UI are built using the UITabBarController class. 이 문서에서는 여러 컨트롤러 및 뷰를 포함 하는 탭 응용 프로그램을 설정 하는 방법을 안내 합니다.In this article we’ll walk through how to set up a tabbed application that contains several controllers and views. 그런 다음 로그인 화면 후와 같이 루트 컨트롤러가 아닌 Uitab바 컨트롤러를 로드 하는 방법을 살펴보겠습니다.We’ll then examine how to load a UITabBarController when it is not the root controller, such as after a login screen.

웹 보기Web Views

이 문서에서는 Apple에서 제공 하는 세 가지 웹 보기, UIWebView, WKWebview, SFSafariViewController, 유사성 및 차이점, 사용 방법 등을 살펴봅니다.In this article, we will explore each of the three Web Views provided by Apple: UIWebView, WKWebview, and SFSafariViewController, their similarities and differences, and how they can be used.