2011-01-05 50 views
0

我正在寫一個應用程序,用主鍵在內部sqlite數據庫中保存條目,並使用此關鍵字作爲userInfo生成LocalNotificationrandom()保存在sqlite數據庫中的整數每次更改值

但是,如果我從LocalNotification獲得密鑰並在db中搜索它的條目,我什麼都找不到。然後我更改Interface,我在Label中看到了密鑰,並且注意到在每次應用程序啓動後密鑰都在更改。

所以我儘量讓另一個「關鍵」列並保存

NSInteger *randomNR = (NSInteger*)random() 

進去。但是這個數字每次都在變化!那麼我可以複製random()方法的實際數量並將其保存到數據庫?

回答

0

您沒有正確地從random()正確製作NSIntegerrandom(3)返回long。你不能簡單地投入一個長的NSInteger *並得到你想要的價值。

你可能會混淆NSInteger與一個對象。 NSInteger s是原始數據類型,不需要需要爲類似Cocoa類的指針。你可能想要使用:

NSInteger randomNR = (NSInteger) random(); 
NSInteger *randomNRPtr = &randomNR; // If you really _do_ want a pointer 
+0

oops ...我就是這樣一個傻瓜...像(NSInteger *)aNSNumber這樣的劇組導致了這種失敗... – Melbek 2011-01-05 17:31:35