2013-05-16 2 views
-1

У меня есть вызов json, и я анализирую результаты в UILabel. В моем ответе json у меня есть 4 имени под Клиентами.Как создать многострочный UILabel

Я пытаюсь поместить всех Клиентов в мой UILabel.

В настоящее время я вижу только последнего из 4 клиентов из моего ответа json, но в моем журнале я вижу всех 4 клиентов.

Если вы видите фотографию ниже, вы увидите brithouse, который является четвертым клиентом в вызове json. Я хотел бы просмотреть все 4 клиента в mu uilabel? В настоящее время я вижу только последнего клиента.

Благодаря

{ 
    "ProfileID":34, 
    "ProfilePictureID":20, 
    "Name":"Bilbo Baggins", 
    "Clients": 
    [ 
     { 
     "ClientID":91, 
     "Name":"Fnurky" 
     }, 
     { 
     "ClientID":92, 
     "Name":"A different client" 
     }, 
     { 
     "ClientID":95, 
     "Name":"Second Community" 
     }, 
     { 
     "ClientID":96, 
     "Name":"Britehouse" 
     } 
    ] 
} 

Мой объектный код C

NSDictionary* json1 = [NSJSONSerialization JSONObjectWithData:responseData //1 
                options:kNilOptions 
                 error:&error]; 


NSArray* latestLoans = [json1 objectForKey:@"Clients"]; //2 

NSLog(@"Clients: %@", latestLoans); //3 

NSArray *performersArray = [json1 objectForKey:@"Clients"]; 
for (NSDictionary *performerDic in performersArray) { 
    NSLog(@"%@", [performerDic objectForKey:@"Name"]); 

    jsonSummary.text = [NSString stringWithFormat:@"The clients under this user are: %@ ", 
         [performerDic objectForKey:@"Name"]]; 

NSLog

2013-05-16 13:03:52.820 com.barloworld.atajo[5137:907] Fnurky 
2013-05-16 13:03:52.821 com.barloworld.atajo[5137:907] A different client 
2013-05-16 13:03:52.821 com.barloworld.atajo[5137:907] Second Community 
2013-05-16 13:03:52.822 com.barloworld.atajo[5137:907] Britehouse 

enter image description here

+0

Пожалуйста, удалите материал JSON и повторите вопрос: вы не знаете, как создать многострочную метку. –

+0

вы хотите, чтобы все 4 имени в одном 'UILable' или в 4 разных' UILabels'? –

ответ

1

Используйте этот

  NSDictionary* json1 = [NSJSONSerialization JSONObjectWithData:responseData //1 
               options:kNilOptions 
                error:&error]; 
      NSArray* latestLoans = [json1 objectForKey:@"Clients"]; //2 
      NSArray *performersArray = [json1 objectForKey:@"Clients"]; 
      NSMutableArray *array=[[NSMutableArray alloc]initWithCapacity:3]; 
      for (NSDictionary *performerDic in performersArray) { 
       [array addObject:[performerDic objectForKey:@"Name"]]; 
      } 
      NSString *output=[array componentsJoinedByString:@","]; 
      jsonSummary.text = [NSString stringWithFormat:@"The clients under this user are: %@ ", 
           output]; 
+0

@Blake Попробуйте это –

0

Вы можете использовать это ..

перед Loop:

NSString *tempString = @""; 

В Loop:

tempString = [tempString stringByAppendingFormat:@"%@", [performerDic objectForKey:@"Name"]]; 

После Loop:

jsonSummary.text = [NSString stringWithFormat:@"The clients under this user are: %@", tempString]; 
0

Это ниже кода будет только добавить последнее значение в label

jsonSummary.text = [NSString stringWithFormat:@"The clients under this user are: %@ ", 
        [performerDic objectForKey:@"Name"]]; 

вам необходимо добавить имя каждого клиента в строку, а затем отобразить значение строки в ярлыке ... Для добавление в строку сделать,

JsonString =[NSString stringByAppendingFormat: [performerDic objectForKey:@"Name"]]; 

Теперь эта строка будет иметь все значения клиента, сейчас

jsonSummary.text =[NSString stringWithFormat : @"YOUR OWN LINES %@ " JsonString]; 
Смежные вопросы