Проектирование пользовательских интерфейсов с помощью Xcode

Начиная с Visual Studio 2019 версии 16.8 и Visual Studio для Mac версии 8.8 рекомендуемый способ редактирования раскадровки и NIB-файлов заключается в их редактировании в Xcode Interface Builder на Mac.

Примечание.

Начиная с Visual Studio 2019 версии 16.9, нет поддерживаемого способа редактирования раскадровки iOS в Windows. Используйте Visual Studio для Mac и построитель интерфейсов Xcode для продолжения создания пользовательских интерфейсов Xamarin.iOS.

В этой статье рассматриваются распространенные решения по созданию пользовательских интерфейсов с помощью построителя интерфейсов Xcode. Эта статья может быть особенно полезной, если вы ранее редактировали пользовательские интерфейсы с помощью конструктора Xamarin.iOS.

Более подробное пошаговое руководство по раскадровкам см. в разделе "Раскадровки" в Xamarin.iOS.

Открытие раскадровки

Откройте файл пользовательского интерфейса iOS в Visual Studio для Mac, щелкнув правой кнопкой мыши файл раскадровки и выбрав построитель интерфейсов Xcode:

Select Interface Builder

Затем откроется окно Xcode. Все сохраненные здесь изменения будут отражены в проекте Visual Studio.

Xcode Window

Дополнительные сведения о конструкторе интерфейсов Xcode см . в встроенном конструкторе интерфейсов.

Создание нового элемента управления

Чтобы создать новый элемент управления с помощью конструктора интерфейсов Xcode, сначала выберите раскадровки, которую вы хотите изменить. Затем откройте диалоговое окно библиотеки Xcode (просмотр>библиотеки отображения) и перетащите элемент управления в раскадровку.

Library Picker

Затем откройте соответствующий файл заголовка контроллера представления. Для пустого приложения Xamarin.iOS пустого представления раскадровка по умолчанию называется Main.storyboard. Соответствующий файл контроллера представления вызывается ViewController.cs в Visual Studio с соответствующим файлом заголовка ViewController.h при просмотре из Xcode.

В конструкторе интерфейсов Xcode откройте раскадровку и соответствующий файл заголовка контроллера представления. Удерживая клавишу CONTROL (^), перетащите элемент управления из раскадровки в файл контроллера представления, пока Xcode не предложит вам диалоговое окно.

Demo Link Control

Как показано выше, соответствующий код C# будет автоматически создан в файле кода контроллера представления. Теперь вы можете получить доступ к этому элементу управления в проекте Xamarin.iOS.

Изменение имени существующего элемента управления

Чтобы изменить имя существующего элемента управления из конструктора интерфейсов Xcode и отразить это изменение в проекте C#, перейдите к соответствующему файлу заголовка контроллера представления, правой кнопкой мыши и выберите рефакторинг.

Refactor Control

Файл программной части будет повторно создан с новым именем, что позволяет получить доступ к элементу управления с помощью кода в Visual Studio для Mac.

Известные проблемы

В этом разделе рассматриваются известные проблемы.

"Visual Studio не удалось связаться с Xcode"

В macOS Catalina или более поздней версии может возникнуть следующая ошибка:

cant communicate err

Во-первых, в системных настройках Mac в разделе "Безопасность и автоматизация конфиденциальности>" убедитесь, что Visual Studio указана в списке, а Xcode проверка.

macOS security

Если Xcode проверка и сообщение об ошибке по-прежнему отображается, может потребоваться сбросить разрешения на конфиденциальность Visual Studio для Mac.

Это можно сделать, запустите окно терминала и выполните следующую команду:

sudo tccutil reset All "com.microsoft.visual-studio"

Чтобы убедиться, что указанное выше изменение вступает в силу, сбросьте praM Mac. Инструкции см. в разделе "Сброс NVRAM" или PRAM на компьютере Mac.