Всплывающее окно WatchKit и UIAlertView/UIAlertController

В моем приложении WatchKit, когда пользователь впервые запускает его, я хотел бы представить им полезное сообщение, которое сообщает им, как работает приложение, например. что делают кнопки и т.д.

Есть ли что-то похожее на UIAlertView/UIAlertController, которое я могу вызвать в приложении WatchKit? Я не мог найти ответа на эту тему, что вполне может означать, что это невозможно.

Ответы

Ответ 1

(Новое в watchOS 2.0)

 WKAlertAction *act = [WKAlertAction actionWithTitle:@"OK" style:WKAlertActionStyleCancel handler:^(void){
        NSLog(@"ALERT YES ");
    }];

 NSArray *testing = @[act];

[self presentAlertControllerWithTitle:@"Voila" message:@"This is Watch OS 2 !" preferredStyle:WKAlertControllerStyleAlert actions:testing];

СВИФТ

func showPopup(){

    let h0 = { print("ok")}

    let action1 = WKAlertAction(title: "Approve", style: .default, handler:h0)
    let action2 = WKAlertAction(title: "Decline", style: .destructive) {}
    let action3 = WKAlertAction(title: "Cancel", style: .cancel) {}

    presentAlert(withTitle: "Voila", message: "", preferredStyle: .actionSheet, actions: [action1,action2,action3])

}

Ответ 2

i добавит результат swift4, который работает для меня при использовании

WKAlertAction

watchOS 4.0

Swift 4

        let action1 = WKAlertAction.init(title: "Cancel", style:.cancel) {
            print("cancel action")
        }

        let action2 = WKAlertAction.init(title: "default", style:.default) {
            print("default action")
        }

        let action3 = WKAlertAction.init(title: "destructive", style:.destructive) {
            print("destructive action")
        }

        presentAlert(withTitle: "Alert Title", message: "message is here", preferredStyle:.actionSheet, actions: [action1,action2,action3])

Ответ 3

Да, после обновления до watchOS 2 вы можете представить представление предупреждения, используя presentAlertController из WKInterfaceController.

Смотрите официальную документацию здесь.

Ответ 4

Нет такого класса для предупреждений. Однако вы можете представить "WKInterfaceController" с информацией в "WKInterfaceLabel" и "WKInterfaceButton".

Ответ 5

К сожалению, вы не можете этого сделать. Но у вас, конечно же, есть модальная иерархия на основе страниц с скриншотами о том, как приложение работает, если приложение запускается в первый раз. Я делаю это в своем приложении!:)

Ответ 6

   let h0 = { print("h0 action")}
   let h1 = { print("h1 action")}

   let action1 = WKAlertAction(title: "h0 action", style: .default, handler:h0)
   let action2 = WKAlertAction(title: "h1 action", style: .default, handler:h0)

   self.presentAlert(withTitle: "Title", message: "a message", preferredStyle: .actionSheet, actions: [action1, action2])

Код в Swift 3

Ответ 7

Если бы я мог сделать еще одно предложение: Создайте отдельную группу для своего "предупреждения" в вашем начальном интерфейсном контроллере и покажите/скройте ее по мере необходимости.