2015-08-15 33 views
0

我使用User類繼承PFUser。它與Parse正確註冊。解析:PFUser子類對象不更新視圖控制器中的屬性

User *user = [User currentUser]; 
user.topics = @[@"a"]; 

並在隨後的視圖控制器運行此:

User.h

@interface User : PFUser <PFSubclassing> 

@property (strong, nonatomic) NSMutableArray *topics; 

User.m

@interface User() 
@end 
@implementation User 
@synthesize topics; 

在視圖控制器,I與訪問用戶代碼:

User *user = [User currentUser]; 
user.topics = [user.topics addObject:@"b"]; 

當我彈出回第一視圖控制器,如果我在viewDidLoad中檢查user.topics它表明其值仍然是 [@「一」] 和不 [@「一」,@「b」的]

[User currentUser]獲取一個單例,從理論上講,無論我在哪裏編輯它,它都應該改變。

關於問題可能是什麼的任何想法?

回答

0

假設您在致電您的鑰匙之前在didFinishLaunchingWithOptions:中註冊了您的子類,建議您更改的所有建議是您的綜合屬性。您應該致電@dynamic而不是綜合。來源:https://parse.com/docs/ios/guide#objects-properties-amp-methods

+0

謝謝Jteve - 我其實不希望那個特定的屬性被保存起來解析,這就是爲什麼我使用合成而不是動態。無論哪種方式,我嘗試將它改變爲動態仍然沒有骰子。當我看着指針時,它們在兩個地方都是相同的地址。但是,在描述中顯示它是一個PFUser對象而不是一個用戶對象 - 這可能是爲什麼?不知道爲什麼我能夠閱讀但不寫屬性。 –

相關問題