Xamarin.iOS의 텍스트 입력

사용자 텍스트 입력 허용은 한 줄 입력의 경우, 여러 줄 편집 가능한 텍스트의 경우 UITextView를 사용하여 수행 UITextField 됩니다. 이러한 컨트롤 중 하나를 화면으로 끌어서 두 번 클릭하여 초기 텍스트를 설정할 수 있습니다.

아래 스크린샷은 Mac용 Visual Studio 도구 상자 패드에 있는 이러한 컨트롤의 아이콘을 보여줍니다.

UITextField

UITextView

콘센트의 이름을 지정하고 Storyboard 파일을 저장하면 Mac용 Visual Studio 부분 클래스를 .designer.cs 업데이트하고 컨트롤을 참조하는 C# 코드를 클래스 파일에 추가할 수 있습니다. 각 컨트롤에는 C# 코드에서 액세스할 수 있는 고유한 속성과 이벤트가 있습니다.

UITextField

컨트롤 UITextField 은 사용자 이름 또는 암호와 같은 한 줄의 텍스트 입력을 허용하는 데 가장 자주 사용됩니다. 컨트롤을 사용자 지정하는 데 사용할 수 있는 옵션 중 일부는 다음과 같습니다.

UITextField 속성

이러한 컨트롤은 아래에 설명되어 있습니다.

  • 자리 표시자 – 선택 사항입니다. 설정된 경우 일반적으로 사용자에게 예상되는 입력을 설명하기 위해 텍스트 필드가 비어 있을 때 표시됩니다.
  • 지우기 단추 – 사용자가 텍스트를 빠르게 지우는 방법으로 표준 지우기 단추(X가 있는 회색 원)가 텍스트 필드에 나타나는 경우를 제어합니다. 필드를 편집 중인지 여부에 따라 영구적으로 숨기거나, 영구적으로 표시하거나, 표시할 수 있습니다.
  • 최소 글꼴 크기 조정 및 맞춤 조정 – 글꼴 크기를 더 긴 텍스트에 맞게 자동으로 조정하고 잘림을 방지하지만 지정된 크기보다 작지 않은 것으로 제한됩니다.
  • 대문자화 – 단어, 문장 또는 모든 입력을 자동으로 대문자로 표시할지 여부입니다.
  • 수정 – 맞춤법 검사 및 제안을 사용할 수 있는지 여부입니다.
  • 키보드 – 입력에 대해 표시되는 키보드 스타일과 키보드에서 사용할 수 있는 키를 제어합니다. 여기에는 다른 옵션과 함께 Number Pad, 전화 Pad, Email, URL이 포함됩니다.
  • 모양 – 키보드의 모양 스타일을 제어하며 어둡거나 밝은 테마로 표시됩니다.
  • 반환 키 – 수행할 작업을 보다 잘 반영하도록 Return 키의 레이블을 변경합니다. 지원되는 값에는 Go, Join, Next, Route, Done 및 Search가 포함됩니다.
  • 보안 – 입력이 마스킹되는지 여부를 식별합니다(예: 암호 입력).

디자이너를 사용하여 호출 textfield1 된 UITextField가 화면에 추가된 경우 다음과 같이 C#에서 해당 속성을 설정하거나 변경할 수 있습니다.

textfield1.Placeholder = "type email here...";
textfield1.KeyboardType = UIKeyboardType.EmailAddress;
textfield1.ReturnKeyType = UIReturnKeyType.Send;
textfield1.MinimumFontSize = 17f;
textfield1.AdjustsFontSizeToFitWidth = true;

Xamarin.iOS는 위 코드 조각과 UIReturnKeyType 같이 UIKeyboardType 원하는 설정을 쉽게 선택할 수 있도록 적절한 경우 열거형을 제공합니다.

프로그래밍 방식으로 텍스트 표시

디자이너를 사용하여 화면을 디자인하지 않거나 런타임에 일부 텍스트를 동적으로 추가하려는 경우 다음과 같이 보기 컨트롤러의 메서드에서 ViewDidLoad 프로그래밍 방식으로 UITextField를 만들고 표시할 수 있습니다.

var frame = new CGRect(10, 10, 300, 40);
textfield1 = new UITextField(frame);
View.Add(textfield1);

UITextView

컨트롤을 UITextView 사용하여 읽기 전용 텍스트를 표시하거나 여러 줄 텍스트 입력을 허용할 수 있습니다. 대문자화, 수정 등과 동일한 많은 옵션이 UITextField 있습니다.

UITextView 속성

특정 속성은 다음과 같습니다.

  • 동작 – 텍스트를 편집할 수 있는지 읽기 전용인지 여부입니다.
  • 검색 – 입력된 데이터를 검색하고 전화를 트리거할 수 있는 전화 번호, 지도 대한 링크가 되는 주소, Safari에서 열리는 URL 또는 일정의 이벤트가 되는 날짜 및 시간과 같은 클릭 가능한 요소로 변환합니다.

디자이너를 사용하여 UITextView가 화면에 추가된 경우 다음과 같이 속성을 설정하거나 변경할 수 있습니다.

textview1.Text = "Lorem ipsum..."; // lots of text can go here
textview1.Editable = true;
textview1.DataDetectorTypes = UIDataDetectorType.PhoneNumber | UIDataDetectorType.Link;