源文件中的Swift Editor占位符

嗨有问题的Swift编辑器占位符在源文件“这是我的代码

public func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell{ let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "Cell", for: <#T##IndexPath#>) as! CustomBrandCell let brandImage: UIImage = UIImage(named: self.brands[indexPath.row].name)! cell.brandImageView.image = brandImage return cell } 

我在SO上多次发现了同样的问题。 但他们都没有给出我正在寻找的答案。

当你的代码中有一个(在蓝色背景下显示为“String”)时,你会Placeholder in source file获得Placeholder in source file

图片

占位符是给我们程序员的。 它说“这里应该是一个Stringtypes的值”。 你可以点击它并开始input,简单地用一个variables名来代替。 您也可以按Tab键自动select下一个占位符。 在调用具有多个参数的函数(因此多个占位符)时,这是非常有用的。

占位符实际上只是普通的文本(<#T ## Strign#>),但是XCode“翻译”它看起来像是这样。

在你的情况下,错误是在第三行。

 ...withReuseIdentifier: "Cell", for: <#T##IndexPath#>) as! CustomBrandCell 

正如你所看到的,正如前面提到的, <#T##IndexPath#>是一个普通文本的占位符。 你可能希望这是indexPath

尝试这个。 希望解决你的问题

 public func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell{ // get a reference to your storyboard cell let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "Cell", for: indexPath as IndexPath) as! CustomBrandCell let brandImage: UIImage = UIImage(named: self.brands[indexPath.row].name)! cell.brandImageView.image = brandImage return cell }