Привет, watchOS — Пошаговое руководство
После создания решения, описанного в разделе "Установка и установка", у вас будет 3 проекта:
- Родительское приложение iOS, используемое для установки или других задач администрирования на устройстве. (С другими типами расширений iOS это часто называется приложением Container.) С помощью контрольных приложений пользователи смогут запускать приложение watch, не запуская родительское приложение;
- Расширение watch, содержащее код программы для приложения наблюдения; И
- Приложение "Смотреть", в котором хранятся раскадровки и ресурсы изображений, отображаемые в часовом режиме.
Убедитесь, что ссылки верны: у родительского приложения есть ссылка на приложение "Контрольные" и что приложение "Просмотр" имеет ссылку на расширение.
Убедитесь, что идентификаторы пакета соответствуют соглашению *.watchkitextension *.watchkitapp и что файл Info.plist расширения имеет значение идентификатора пакета WKApp, заданное в качестве идентификатора пакета приложения watch.
Вы должны иметь возможность запустить приложение "Смотреть" сейчас, но так как файл раскадровки в приложении "Просмотр" пусто, вы не сможете рассказать.
Дважды щелкните интерфейс.раскадровку в приложении "Просмотр", чтобы запустить конструктор Xamarin iOS (если вы находитесь на Mac, вы также можете щелкнуть правой кнопкой мыши и открыть с помощью > конструктора интерфейсов Xcode).
Убедитесь, что панели элементов и свойств видны,
Щелкните, чтобы выбрать контроллер интерфейса,
Задайте идентификатор и заголовок контроллера интерфейса для interfaceController и Hi Watch,
Убедитесь, что для класса задано значение InterfaceController
Создайте пользовательский интерфейс:
- На панели элементов
- Перетащите кнопку и метку на сцену, и
- Задайте текст и атрибуты элементов управления, как показано ниже.
Задайте имя на панели свойств для каждого элемента управления. В этом примере мы использовали
myButton
иmyLabel
.Нажмите кнопку на раскадровке и перейдите в список событий панели свойств, а затем
Создайте новое действие , введя
OnButtonPress
и нажав клавишу ВВОД. Действие появится в списке, а частичный метод будет автоматически создан в C#.
После сохранения раскадровки InterfaceController.designer.cs обновляется с именами элементов управления и действиями.. Если вы откроете этот файл после обновления, вы увидите, как соответствует контроллеру и как элементы управления пользовательским интерфейсом соответствуют переменным экземпляра C# и OutletAttribute
как RegisterAttribute
действия сопоставляются с частичными методами, помеченными с ActionAttribute
помощью :
// WARNING
//
// This file has been generated automatically by Visual Studio for Mac from the outlets and
// actions declared in your storyboard file.
// Manual changes to this file will not be maintained.
//
[Register ("InterfaceController")]
partial class InterfaceController
{
[Outlet]
[GeneratedCode ("iOS Designer", "1.0")]
WatchKit.WKInterfaceButton myButton { get; set; }
[Outlet]
[GeneratedCode ("iOS Designer", "1.0")]
WatchKit.WKInterfaceLabel myLabel { get; set; }
[Action ("OnButtonPress:")]
[GeneratedCode ("iOS Designer", "1.0")]
partial void OnButtonPress (WatchKit.WKInterfaceButton sender);
void ReleaseDesignerOutlets ()
{
if (myButton != null) {
myButton.Dispose ();
myButton = null;
}
if (myLabel != null) {
myLabel.Dispose ();
myLabel = null;
}
}
}
Теперь откройте InterfaceController.cs (не InterfaceController.designer.cs) и добавьте следующий код:
int clickCount = 0;
partial void OnButtonPress (WatchKit.WKInterfaceButton sender)
{
var msg = String.Format("Clicked {0} times", ++clickCount);
myLabel.SetText(msg);
}
Этот код должен быть довольно прозрачным: переменная clickCount
экземпляра увеличивается каждый раз при вызове функции OnButtonPress
. Текст myLabel
изменен, чтобы отразить это число. myLabel
Конечно, это имя одного из точек, созданных в XCode. Функция partial
— это реализация функции, связанной с именем указанного действия.
Если он еще не запущен,
Щелкните правой кнопкой мыши проект расширения "Просмотр" и выберите "Задать в качестве запуска проекта",
Задайте целевой объект развертывания для образа симулятора, совместимого с набором часов (например, i Телефон 6 iOS 8.2),
Нажмите кнопку отладки, чтобы активировать запуск сборки и симулятора.
Когда симулятор запускается, нажмите кнопку, чтобы увеличить метку. Поздравляем, у вас есть приложение watch!