setText: устарел

Я попытался узнать, как работать с источником данных sql, я нашел образец имени SQLiteTutorial в образце Apple. Что плохо, Apple не обновила свои образцы, поэтому, когда я открываю файл образца яблока, у меня много устаревших предупреждений ... .

в этом случае код

// Set up the cell
    SQLiteTutorialAppDelegate *appDelegate = (SQLiteTutorialAppDelegate *)[[UIApplication sharedApplication] delegate];
    Animal *animal = (Animal *)[appDelegate.animals objectAtIndex:indexPath.row];

    [cell setText:animal.name];
    return cell;  

и Xcode сказал, что setText устарел, но я не нашел, как это исправить.

Учебник, над которым я работаю, находится здесь: http://dblog.com.au/iphone-development-tutorials/iphone-sdk-tutorial-reading-data-from-a-sqlite-database/

У меня другое предупреждение в делегате приложения

// Execute the "checkAndCreateDatabase" function
    [self checkAndCreateDatabase];

    // Query the database for all animal records and construct the "animals" array
    [self readAnimalsFromDatabase];

    // Configure and show the window
    [window addSubview:[navigationController view]];
    [window makeKeyAndVisible];
}

Xcode сообщает мне, что SQLiteTutorialAppDelegate может не отвечать на checkAndCreateDatabase и readAnimalsFromDatabase

и последнее, что есть в RootViewController, метод экземпляра initWithData: cache not found

введите описание изображения здесь

/ Load the animals image into a NSData boject and then assign it to the UIImageView
    NSData *imageData = [NSData dataWithContentsOfURL:[NSURL URLWithString:[animal imageURL]]];




    UIImage *animalImage = [[UIImage alloc] initWithData:imageData cache:YES];
    self.animalView.animalImage.image = animalImage;

}

спасибо, если у вас есть ответ.


person a3116b    schedule 07.08.2011    source источник


Ответы (2)


cell.textLabel.text = animal.name;

Это то, как вы устанавливаете текст в ячейку, начиная с iOS 3.0.

Не знаю о других предупреждениях, потому что они связаны с кодом, который вы не публиковали. Учиться на таком старом коде - не лучшая идея, вам, вероятно, следует найти что-то немного новее :)

person Filip Radelic    schedule 07.08.2011
comment
спасибо за ответ, так понятно. В своих ответах многие люди забыли, что английский - не мой родной язык и что я новичок, иногда их ответы для меня китайские. Благодарность - person a3116b; 08.08.2011

документация - это всегда хорошее начало для поиска способов замены устаревших методов:

Текст ячейки. (Не рекомендуется в iOS 3.0. Вместо этого используйте свойства textLabel и detailTextLabel.)

Что касается других ваших предупреждений, вы, вероятно, забыли объявить методы readAnimalsFromDatabase и checkAndCreateDatabase в своем файле заголовка.

person omz    schedule 07.08.2011