2017-11-16 9 views
-1

私は最初のアプリケーションを作成しています。ここで私の最大の問題です。私は、ユーザーの入力に基づいてアクションを追加することができる通知を行いたいと思います。最初はアクションなしのカテゴリを作成してからforループを使用してアクションを作成し、カテゴリに追加しますが、ここには問題があります: プロパティに割り当てることはできません: 'actions' is取得専用のプロパティここでプロパティに割り当てることはできません: 'actions'はget-onlyプロパティです

は私のコードです:

var category5 = UNNotificationCategory(identifier: "category.5", actions: [], intentIdentifiers: [], hiddenPreviewsBodyPlaceholder: "placeholdertext", options: []) 

    for index in 0..<workingDays[3].subjects!.count { 
     let action = UNNotificationAction(identifier: "\(workingDays[3].subjects![index + 1].subjectName).5", title: workingDays[3].subjects![index + 1].subjectName, options: .foreground) 

       category5.actions += [action] // here I get the error 
       // category5.actions.append(action) // I tried this as well but I get the same error 
      } 

は、どのように私は私の問題を修正することができますし、これを行うための別の方法は何ですか?アクション配列を変更可能にしたいので、後でそのアクション配列を削除することもできます。

何か助けをいただければ幸いです。私にとっては夢が実現するでしょう!エラーが示すように

答えて

0

UNNotificationCategory.actions配列は読み取り専用で、UNNotificationCategoryコンストラクタメソッドを介して変更することができますので、この方法を試してみてくださいあなたのために働く必要があります

var actionsToAdd : [UNNotificationAction] = [] 
    for index in 0..<workingDays[3].subjects!.count { 
     let action = UNNotificationAction(identifier: "\(workingDays[3].subjects![index + 1].subjectName).5", title: workingDays[3].subjects![index + 1].subjectName, options: .foreground) 

       actionsToAdd.append(action) 
      } 

var category5 = UNNotificationCategory(identifier: "category.5", actions: actionsToAdd, intentIdentifiers: [], hiddenPreviewsBodyPlaceholder: "placeholdertext", options: []) 
+1

はあなたの魅力のようなので、多くの作品をありがとうございました!神はあなたが他人を助ける良い仕事を続けてくださることを祝福します! –

関連する問題