Tip.statusUpdates не срабатывает при пожертвовании на мероприятиеIOS

Программируем под IOS
Ответить Пред. темаСлед. тема
Anonymous
 Tip.statusUpdates не срабатывает при пожертвовании на мероприятие

Сообщение Anonymous »

У меня есть подсказка, которую нужно показывать после определенного события:

Код: Выделить всё

extension Tips {
static let somethingHappened = Tip.Event(id: "somethingHappened")
}

struct TestTip: Tip {
let title = Text("Test tip")
let message = Text("This is a description")

var rules: [Rule] {
#Rule(Tips.somethingHappened) { $0.donations.count > 0 }
}
}
Я хотел бы представить этот совет, когда его статус станет .доступным. Для этого я наблюдаю statusUpdates в задаче:

Код: Выделить всё

tipStatusObserverTask = Task { [tip, weak self] in
print("observing \(tip.id)")

for await status in tip.statusUpdates {
guard let self, !Task.isCancelled else {
return
}

print("tip status: \(status)")

if case .available = status {
print("will present \(tip.id)")
displayTip()
}
}

print("done observing \(tip.id)")
}
тогда я жертвую событие одним нажатием кнопки:

Код: Выделить всё

@objc func didPressButton() {
Tips.somethingHappened.sendDonation {
print("donated Tips.somethingHappened")
}
}
Событие передано в дар, но statusUpdates не срабатывает, поэтому подсказка никогда не отображается. Подсказка появляется после перезапуска приложения. Что происходит? Что я делаю не так?

Код: Выделить всё

statusUpdates
работает нормально, если правило основано на изменении @Parameter, поэтому я ожидаю, что этот подход будет работать для правил, основанных на событиях.
Вот проект это воспроизводит проблему на случай, если кто-нибудь захочет попробовать: https://www.icloud.com/iclouddrive/085F ... TipKitTest

Подробнее здесь: https://stackoverflow.com/questions/792 ... t-donation
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Tip.statusUpdates не срабатывает при пожертвовании на мероприятие
    Anonymous » » в форуме IOS
    0 Ответы
    13 Просмотры
    Последнее сообщение Anonymous
  • Перерисовка элементов управления завершается с ошибкой, когда элементы управления Edit выдают предупреждение Too Tip в д
    Anonymous » » в форуме C++
    0 Ответы
    15 Просмотры
    Последнее сообщение Anonymous
  • Как использовать документацию по стилю комментариев Clion Tip?
    Anonymous » » в форуме C++
    0 Ответы
    19 Просмотры
    Последнее сообщение Anonymous
  • Регистрация на мероприятие
    Anonymous » » в форуме Php
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous
  • Icalendar установил мероприятие на целый день
    Anonymous » » в форуме Python
    0 Ответы
    35 Просмотры
    Последнее сообщение Anonymous

Вернуться в «IOS»