2015-07-29 3 views
0

В настоящее время этот код работает, но paris является фиксированным значением, я хотел бы ввести переменную и определить ее как раз перед этим.Не удается найти инициализатор для типа UIImage, который принимает список аргументов строки типа

let entry1 = data.paris[indexPath.row] 
let image = UIImage(named: entry1.filename) 
cell2.bkImageView2.image = image 
cell2.headingLabel2.text = entry1.heading 

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

let key1 = "paris" 
let entry1 = data[key1][indexPath.row] 
let image = UIImage(named: entry1.filename) 
cell2.bkImageView2.image = image 
cell2.headingLabel2.text = entry1.heading 

Имеет ли вы информацию, чтобы помочь мне?

Edit: 29 июля 13h12

Ok, После вашего объясняет, у меня есть это:

var entry = data[key][indexPath.row] 
if let imgName = entry1.filename { 
      let image = UIImage(named: imgName!) 
      cell2.bkImageView2.image = image 
      cell2.headingLabel2.text = entry1.heading 
     } 

Но теперь у меня есть еще ошибка на последнем предложении (cell2.headinglabel ...): Неоднозначное использование «заголовка»

Любая идея? Но для предыдущего запроса, отлично! Отличная работа ! :)

ответ

0

Это означает, что entry1.filename является необязательной строкой, а не строка, попробуйте следующее:

if let imgName = entry1.filename { 
    let image = UIImage(named: imgName) 
} 

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

+0

Это должно быть то же самое, когда я использовал фиксированное значение (как только чуть выше), нет? Я не понимаю, почему, когда я использовал переменную, эта проблема возникает. – Hugo75

+0

в вашем примере paris - это String, но словарь данных возвращает необязательное значение (поскольку возможно, что для определенного ключа нет значения), поэтому ваша запись1 является необязательной, поэтому поэтому вам нужно ее разворачивать. – Greg

+0

Я попробую это и дам вам знать, thx для объяснений – Hugo75

Смежные вопросы