Установите значение для CGRect.frame.size из NSDictionary - PullRequest
3 голосов
/ 28 апреля 2011

Я генерирую словарь из строки JSON, и одно из значений словаря предназначено для использования в качестве высоты объекта WebView.

NSDictionary *dic = [jsonParser objectWithString:response];
CGFloat *height = [dic valueForKey:@"intHeightPixels"];
CGRect frame = webView.frame;
frame.size.height = height;
webView.frame = frame;

В строке 2 я получаю следующую ошибку:

Инициализация 'CGFloat' (он же float) с выражением несовместимого типа 'id'.

Я новичок в Цели C. Я не знаю, есть ли в этом что-то, посмотрите на указатели, приведение, пожалуйста, подскажите немного.

Ответы [ 2 ]

4 голосов
/ 26 апреля 2012

Вы можете принять конкретное значение в строке, т.е.

NSString *str=[arr valueForKey:@"location"];
CGRect rect9 = CGRectFromString(str);

Это преобразует в CGRect, чтобы вы могли использовать его вместо кадра

3 голосов
/ 28 апреля 2011

Возможно, вы захотите попробовать CGFloat *height = [[dic valueForKey:@"intHeightPixels"] floatValue]; В словарях есть только объект (здесь это NSNumber)

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