我在我的代碼此實現:的NSDictionary總是[0]
@implementation vcLogin {
Util *_Util;
NSInteger _RowCount;
NSDictionary *_Payload;
}
而在其他功能我試圖填補的NSDictionary:
_Payload = [NSJSONSerialization JSONObjectWithData:tPayloadData options:kNilOptions error:nil];
但詞典的價值總是[0]。
我已經測試此代碼,看看它是否是工作:
NSDictionary *tPayload = [NSJSONSerialization JSONObjectWithData:tPayloadData options:kNilOptions error:nil];
而且tPayload返回2倍的值,我很期待。
我已經試過這樣:
NSDictionary *tPayload = [NSJSONSerialization JSONObjectWithData:tPayloadData options:kNilOptions error:nil];
_Payload = [tPayload mutableCopy];
或者
NSDictionary *tPayload = [NSJSONSerialization JSONObjectWithData:tPayloadData options:kNilOptions error:nil];
_Payload = tPayload;
或者
NSDictionary *tPayload = [NSJSONSerialization JSONObjectWithData:tPayloadData options:kNilOptions error:nil];
[_Payload setValuesForKeysWithDictionary:tPayload];
我以前在一個古老的應用程序這樣做,我幾乎可以肯定,我有隻是在實現中聲明,並且字典一直爲空,直到我填充它,如果我檢查viewDidL中的值在我的老應用程序中,值爲空,但在我的新應用程序中是[0]。
我不知道我在想什麼。
感謝您的幫助。
編輯1:
我剛剛意識到,我在執行所有變量[0]當我停在viewDidLoad中的調試器。
@implementation vcLogin {
Util *_Util;
NSInteger _RowCount;
NSDictionary *_Payload;
}
舊的應用程序:
新的應用程序:
編輯2:
正如有人在commen指出我做了變量的NSLog,並充滿了信息,也許我的Xcode有問題。
我打算繼續,如果我發現Xcode的問題,我會發佈一個答案。
感謝您的幫助。
嘗試初始化_Payload然後使用它! Sory,是_Payload零? –
@ Mr.TI已嘗試在viewDidLoad中_Payload = N11和之前和之後的零值[0] –
「而tPayload返回2倍的值,我很期待」請出示此的NSLog輸出的實際,和還記錄'_Payload'的NSLog輸出。另外請顯示更多的代碼上下文 - 實際的NSLog,你正在做的所有這些的實際代碼等等。不要嘗試從調試器中的變量窗格中讀取任何這些代碼;使用NSLog並告訴我們你得到了什麼。 – matt