Мне удалось получить данные «Data1» а также «Data2» из базы данных PHP MySQL.
Выход :
[{"d1":"data1","d2":"data2"}]
И мой вопрос, как отобразить его на экране контроллера?
Я назвал этикетку с myLabel1 а также myLabel2
viewController.m
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
@synthesize myLabel1,myLabel2;
- (void)viewDidLoad {
[super viewDidLoad];
NSError *error;
NSString *url_string = [NSString stringWithFormat: @"https://localhost/label.php"];
NSData *data = [NSData dataWithContentsOfURL: [NSURL URLWithString:url_string]];
NSMutableArray *json = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&error];
NSLog(@"Output : %@", json);
}
От твоего JSON
Формат ответа, ясно, что ваш data
иерархия будет array
-> dictionary
-> key
,values
,
Итак, сначала вы должны получить массив как:
NSMutableArray *json = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&error];
что вы уже сделали хорошо.
Следующий шаг — погрузиться в dictionary
,
Так что получите свой первый dictionary
как
NSDictionary *dict = [json firstObject];
Этот словарь будет иметь ваш key
value
пары, к которым вам нужно будет получить доступ. Итак, вот так:
NSString *data1 = [dict valueForKey:@"d1"];
NSString *data2 = [dict valueForKey:@"d2"];
Теперь, наконец, установите эти значения для вашего текста:
myLabel1.text = data1;
myLabel2.text = data2;
Других решений пока нет …