ios - UICollectionView 获取错误的索引

标签 ios swift uicollectionview

每次点击我的 collectionview 都会得到一个不同的索引。那就是我实现的代码:

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject!) {

if (segue.identifier == "projectsSegue") {
    let indexPath = collectionView.indexPathForCell(sender as! MyCell)
    let indexPathItem = indexPath?.item


    let controller = (segue.destinationViewController ) as! ProjectsByCodeViewController


    controller.indexSelected = indexPathItem!


}

我确实认为一切都应该正常工作,但事实并非如此。我需要做什么?我的数组有 4 个项目,如果 im 在最后一个项目上,它会检测为第 3 个,如果 im 在第 1 个项目上,它会检测为第 1 个,而不是 0 索引。如果我从末尾开始,它会显示索引 1。怎么了?

最佳答案

您的文本字段 3 框架不应使用单元格框架 y 作为其位置,因为内容会重叠并弄乱其他项目的布局。单元格中的每个项目的框架都是关于单元格本身的,所以你可以让文本字段从单元格顶部向下 20px 开始:

var titleField3 = UILabel(frame: CGRectMake(15, 20, cell.frame.width - 30, 70))

希望对你有帮助

关于ios - UICollectionView 获取错误的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36427539/

相关文章:

ios - 如何从 iOS9 中的 AddressDictionary 获取格式化地址 NSString?

swift - 如何创建一个结构体来将 JSON 反序列化为具有多级节点的结构

ios - 在 RxSwift 中从 searchBar 绑定(bind)到 TableView

ios - UICollectionView 什么时候请求它的数据?

ios - Apple 是否允许我们将用户的信用卡信息从应用程序发送到服务器以进行支付?

jquery - 删除媒体查询导航栏中的所有空格

swift - Realm - 尝试从第 0 部分删除项目 x,在更新崩溃之前该部分仅包含 4 个项目

ios - 由于未捕获的异常 'NSInvalidArgumentException' 而终止应用程序,原因 : 'attempt to scroll to invalid index path

iphone - MainWindow.xib 和 iPhone 5(4 英寸显示屏)

ios - Xcode 应用程序运行问题