私はiOSが初めてです。何か問題がありますが、それに対する解決策はありますか?テキストフィールドに json 値を出力できません これは私のcontactViewController.m
ファイルです:
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
fname.text=@"Hello";
}
ビューがロードされた後、hello値がテキスト ボックスに表示されますが、リスト ボタンを呼び出して json 値を取得すると、次のようになります。
-(IBAction)list:(id)sender{
vedant=[[WebserviceViewController alloc]init];
[vedant listContacts];
}
次にwebserviceViewController.m
、jsonResponseを同じファイルに渡します。つまりcontactViewController.m
、json値を解析して出力しますが、テキストフィールドに値が表示されません
-(void)allContacts:(NSString *)JSONResponse{
NSLog(@"%@",JSONResponse);
NSData *jsonData = [JSONResponse dataUsingEncoding:NSASCIIStringEncoding];
//
NSError *err;
NSDictionary *json = [NSJSONSerialization JSONObjectWithData:jsonData options:kNilOptions error:&err];
int accCount =[json count];
for(int i=0;i<accCount;i++){
NSData *jsonData = [JSONResponse dataUsingEncoding:NSASCIIStringEncoding];
//
// NSLog(@"%@",JSONResponse);
NSError *err;
NSDictionary *json = [NSJSONSerialization JSONObjectWithData:jsonData options:kNilOptions error:&err];
NSString *firstName = [NSString stringWithFormat:@"%@", [[json objectAtIndex:i] objectForKey:@"first_name"]];
NSLog(@"%@",firstName); //this prints the actual first name in console But
fname.text=firstName;
NSLog(@"%@",fname.text); //it prints "(Null)" in console
}
}
値を渡すためにデリゲートを作成する必要がありますか?
はい、そのようなデリゲートを作成するためのヘルプは、いくつかの記事または例です。