オプションの値を述語にしようとしていますが、次のエラーで常にアプリケーションがクラッシュします。swiftのオプション値の述語が機能しない
*理由、「NSUnknownKeyException」キャッチされない例外によりにアプリを終了:「[valueForUndefinedKey:]:このクラスは、キー値コーディング準拠のキーq_idのためではありません」 *まずスローコールスタック:
変数がありますがモデルで定義するが、それは私が
var q_id = Int()
細かいアンラップそれの働きで、この変数を変換する場合は、この
var q_id : Int!
のように定義しています
オプションの値に述語を入れる方法は他にありますか?
let Qid = dictData.objectForKey("q_id") as? String
let fQuesID : Int = Int(Qid!)!;
let predicate = NSPredicate(format: "SELF.q_id == %i",fQuesID)
let arrObj : NSArray = arrData.filteredArrayUsingPredicate(predicate) ;
//arrData.filter { predicate.evaluateWithObject($0) }
if(arrObj.count > 0)
{
let objPostModel : ViewPostModel = arrObj.firstObject as! ViewPostModel;
objPostModel.isPollExpired = 1; // 1 Means Poll Expired!
self.tblViewPost?.reloadData();
}
それが唯一の変数プリミティブオプションの種類で起こっている(int型、float型、等...)
更新: あなたはプリミティブ型がunoptional作る場合、それは細かい
を働いています
_Soは、あなたが本当にやりたいことに依存します。 'q_id'がアクセス可能であれば、あなたがしたいことを記述する擬似コードを表示できますか? – OOPer
私はそれをそれぞれの答えで質問を更新するために使用しています... –
私たちにあなたのコードを教えてください。 – OOPer