Инициализация UIImageView с другим изображением в зависимости от переменной - PullRequest
0 голосов
/ 20 декабря 2011

У меня есть UITableView с некоторыми ячейками. Когда ячейка коснулась, я установил строковую переменную с именем Index на индекс ячейки, которая была нажата. Я проверил, что это работает с NSLog индекса от контроллера моего UIImageView. Теперь то, что я пытаюсь сделать, это установить изображение UIImageView в изображение, соответствующее повернутой ячейке (то есть различное изображение для каждой ячейки). Я пытаюсь сделать это (это не работает) с помощью этого кода в методе ViewDidLoad контроллера UIImageView:

if ([[TableViewController alloc] Index] isEqualToString:@"0"]) {
   Display.image = [UIImage imageNamed:@"0.jpg"]; 
}  

«Отображение» - это имя моего UIImageView. Этот код правильный? Если это так, где я должен поместить его так, чтобы при нажатии на первую ячейку мой UIImageView инициализировался с изображением под названием «0.jpg»?

Ответы [ 2 ]

1 голос
/ 20 декабря 2011

Я думаю, что ваш if ([[TableViewController alloc] Index] isEqualToString: @ "0"]) сравнивает число (Index) со строкой "0".Возможно, это должно выглядеть примерно так:

if ([[TableViewController alloc] Index] == 0)

0 голосов
/ 20 декабря 2011

Ваш контроллер представления изображений уже виден (загружен) на том же экране, что и представление таблицы, или вы выдвигаете новый контроллер представления изображений для каждого касания ячейки в представлении таблицы?Это имеет огромное значение в том, как подойти к этому.Если вы делаете первое, использование viewDidLoad не будет работать, потому что представление уже загружено.Вам нужно будет написать метод для изменения изображения, например:

-(void)changeImage:(NSString *)imageName {
    Display.image = [UIImage imageNamed:imageName];

Если вы каждый раз запускаете новый просмотр изображения, вам нужно будет создать переменную экземпляра в представлении изображения.и поместите это в табличное представление didSelectRow ... method:

myImageView.imageName = [NSString stringWithFormat:@"%d.jpg", indexPath.row];
//now push your view

Может быть полезно опубликовать больше кода, чтобы мы могли увидеть ситуацию с загрузкой представлений.

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