[__NSSingleEntryDictionaryI elements]: нераспознанный селектор отправлен на экземпляр 0x2836c2820 - PullRequest
0 голосов
/ 24 февраля 2020

Ну, я должен помнить вас, я все еще новичок в iOS разработке с целью c. И, возможно, из-за этого решение простое, но я его не вижу. У меня есть json, который вооружен следующим образом:

{
   "origin_addresses": [
      "Test"
   ],
   "rows": [
      {
         "elements": [
            {
               "distance": {
                  "text": "0.3 km",
                  "value": 339
               },
               "duration": {
                  "text": "1 min",
                  "value": 82
               },
               "status": "OK"
            }
         ]
      }
   ],
   "status": "OK"
}

Приложение может использовать службу без проблем. Моя цель - достичь атрибута расстояния. Что я делаю следующим образом. Я использую foreach, чтобы пройти через массив строк , а затем другой foreach, чтобы пройти через массив elements .

for (BPCGARows *item in googleAddress.rows) {
            NSLog(@"rows : %@", item);
            for (BPCGAElements *element in item.elements) {

            }
        }

Когда я отлаживаю приложение, Мой первый для каждого работает без проблем, но когда я получаю доступ ко второму foreach элементу (BPCGAElements * в item.elements) , приложение вылетает. Наконец, я не могу распечатать item.elements в журнале. Сообщение об ошибке выглядит следующим образом:

'NSInvalidArgumentException', причина: '- [__ NSSingleEntryDictionaryI elements]: нераспознанный селектор отправлен в экземпляр 0x281c75da0'

заголовок BPCGADistance:

@interface BPCGADistance : MBOInspectableModel

@property (nonatomic, strong, readonly) NSString *text;
@property (nonatomic, strong, readonly) NSNumber *value;

@end

main BPCGADistance:

@interface BPCGADistance()

@property (nonatomic, strong, setter=text:) NSString *text;
@property (nonatomic, strong, setter=value:) NSNumber *value;

@end

header BPCGAElements:

@interface BPCGADistance : MBOInspectableModel

@property (nonatomic, strong, readonly) NSString *text;
@property (nonatomic, strong, readonly) NSNumber *value;

@end

main BPCGAElements:

@interface BPCGADistance()

@property (nonatomic, strong, setter=text:) NSString *text;
@property (nonatomic, strong, setter=value:) NSNumber *value;

@end

This мой NSLog (@ "columns:% @", item), я подчеркиваю это, используя item.elements для печати приложения crashea на консоли. ;

enter image description here

...