Swift将图像图标添加到UITableViewController

时间:2015-07-20 19:35:54

标签: ios swift uitableview

我试图使用此代码

在我的tableview单元格旁边导入单独的图像图标
switch(Anime)   {
    case 0:       
        var bleachimage = UIImage(named: "bleach icon")
        cell.imageView?.image  = bleachimage
    }

但我一直收到标有case 0 type int does not conform to protocol IntervalType的错误。

我正在使用Swift来使用Xcode 6.1

在发布之前我也读过,我本来应该是切换单元格索引而不是数组,我试过但失败了所以也许我做错了什么?

请求帮助。

1 个答案:

答案 0 :(得分:0)

假设:

  1. 您的数组anime(是的Anime但是您应该使用小写字母代表第一个字符)并且n元素n是您的数组中的单元格数表
  2. anime的每个元素都是tuple
  3. tuple的第一个元素(在子弹2中声明)是String代表图像名称本地存储
  4. 您可以使用以下代码将图像添加到每个单元格:

    override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
        let cell = tableView.dequeueReusableCellWithIdentifier("myCell") as? UITableViewCell
            ?? UITableViewCell(style: .Default, reuseIdentifier: "myCell")
        let tuple = self.anime[indexPath.row]
        cell.imageView?.image = UIImage(named: tuple.0)
        return cell
    }
    

    希望这有帮助。

    更新以更好地回答评论

    上面的方法由iOS调用,用于需要显示的每个单元格。每次使用indexPath引用特定单元格进行调用。

      

    E.g。如果iOS需要在0部分(第一个单元格)中显示单元格0   您的表格indexPathrow属性等于0和。{   section等于0。对于1部分中的单元格0,索引路径将具有   row等于1section等于0。等等...

    那么,我在这个方法中做了什么?我正在访问数组indexPath.row的元素anime,以便检索填充位置tuple的单元格所需的indexPath.row。 接下来,我提取元组的第一个元素(包含图像名称的字符串),然后使用该值构建UIImage。 接下来,我将该图像分配给当前单元格。最后我回到牢房。

    试试吧。如果假设是正确的,它将起作用。