Вопрос
Я пытаюсь реализовать простой TTURLRequest
в моем приложении. Я довольно новичок в рамках Three20. В основном я хочу TTURLRequest
и TTImageView
для отличного кэширования.
У меня есть следующий код в моем делегате:
- (void)requestDidFinishLoad:(TTURLRequest*)request {
TTURLDataResponse *response = request.response;
// Stuff to process response.data
}
response
всегда равен нулю. Я не могу понять, что я делаю неправильно. Я посмотрел в каталоге поддержки приложений, и он создает файл кэша с правильными данными, поэтому я знаю, что он получает ответ. Что я делаю не так?
Решение
Отладка вашего кода - вам действительно нужно создать объект ответа и добавить его в запрос перед отправкой запроса:
NSString *url = @"http://twitter.com/statuses/user_timeline/samsoffes.json?count=1";
TTURLRequest *theRequest = [[TTURLRequest alloc] initWithURL:url delegate:self];
theRequest.response = [[[TTURLDataResponse alloc] init] autorelease];
[theRequest send];
Кто-то может подумать, что запрос будет отвечать за создание ответа, а вот материал Three20 - нет.
Другие советы
Марк Аллен из revetkn.com опубликовал реализацию источника данных для TTURLRequest.
Он также опубликовал пример проекта, в котором он предполагает, что у вас установлен Three20 в ../ (относительно вашего проекта). Это здесь: http://revetkn.com/?p=72