Co to jest NSArrayI i NSArrayM? Jak przekonwertować na NSArray?

Czym jest _ _ NSArrayI i _ _ NSArrayM?

__NSArrayI(lub m) powoduje błąd "nierozpoznany selektor".

Jak przekonwertować na NSArray?


Zrobiłem test do analizy json, twitter api.

Http://api.twitter.com/1/followers/ids.json?cursor=-1&screen_name=twitterapi

= = > działa dobrze. przetwarzany obiekt jest klasą NSCFDictionary. (Ten słownik zawiera _ _ NSArrayM class)

Http://api.twitter.com/1/statuses/user_timeline.json?&screen_name=twitterapi

= = > błąd. przetwarzany obiekt to klasa _ _ NSArrayM.

Author: ChangUZ, 2011-10-07

3 answers

__NSArrayI jest słowem kodowym dla niezmiennej tablicy-czyli" regularnej " NSArray, której nie można zmienić.

__NSArrayM jest słowem kodowym dla zmiennej tablicy-czyli NSMutableArray. W NSMutableArray możesz dodawać i usuwać elementy.

 71
Author: Jason,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-10-07 08:16:51

Są to Klasy prywatnego api. Istnieje Projekt , w którym możesz zobaczyć wszystkie klasy prywatnego api. Nie możesz ich używać wewnątrz aplikacji dla app store, ale czasami jest to przydatne zobacz, jak uzyskać dostęp do obiektów, a także jakiego rodzaju obiekt jest. Nie można ich nawrócić. Myślę, że umieszczenie tego rodzaju obiektów wewnątrz debuggera jest tylko reprezentacją wewnętrznych klas, dla klas, których używasz w swoim projekcie. Wiedząc, jaka to klasa, pozwala również zrozumieć, gdzie szukać problemu w kodzie.

Tutaj możesz zobaczyć krótki przegląd obu:

__NSArrayI

Tutaj wpisz opis obrazka

__NSArrayM

Tutaj wpisz opis obrazka

 4
Author: Alex Cio,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-04-10 14:28:56

To zajęcia prywatne. Nie powinieneś chcieć uzyskać do nich dostępu, a ponadto je konwertować.

Jeśli się nie mylę NSArray jest podklasą _NSArray.

Jeśli dodajesz / usuwasz niektóre obiekty do / Z Tablicy sprawdź, czy jest ona zmiennego typu: NSMutableArray

 1
Author: Nekto,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-10-07 08:15:54