- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我可以连接委托(delegate),但是,在连接数据源时出现以下错误:
2015-07-13 16:45:17.529 paintApp[4628:168318] -[UIView collectionView:numberOfItemsInSection:]: unrecognized selector sent to instance 0x7f8a12651c60 2015-07-13 16:45:17.539 paintApp[4628:168318] * Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UIView collectionView:numberOfItemsInSection:]: unrecognized selector sent to instance 0x7f8a12651c60' * First throw call stack: ( 0 CoreFoundation 0x0000000107f67b75 exceptionPreprocess + 165 1 libobjc.A.dylib 0x0000000109cf7bb7 objc_exception_throw + 45 2 CoreFoundation 0x0000000107f6ec8d -[NSObject(NSObject) doesNotRecognizeSelector:] + 205 3 CoreFoundation 0x0000000107ec66fc ___forwarding_ + 988 4 CoreFoundation 0x0000000107ec6298 _CF_forwarding_prep_0 + 120 5 UIKit 0x00000001090a5286 -[UICollectionViewData _updateItemCounts] + 296 6 UIKit 0x00000001090a7469 -[UICollectionViewData numberOfSections] + 22 7 UIKit 0x000000010909158e -[UICollectionViewFlowLayout _getSizingInfos] + 348 8 UIKit 0x0000000109092689 -[UICollectionViewFlowLayout _fetchItemsInfoForRect:] + 526 9 UIKit 0x000000010908deff -[UICollectionViewFlowLayout prepareLayout] + 257 10 UIKit 0x00000001090a53f0 -[UICollectionViewData _prepareToLoadData] + 67 11 UIKit 0x00000001090a5ac9 -[UICollectionViewData validateLayoutInRect:] + 54 12 UIKit 0x000000010906e198 -[UICollectionView layoutSubviews] + 170 13 UIKit 0x0000000108ab3303 -[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 521 14 QuartzCore 0x000000010d463de8 -[CALayer layoutSublayers] + 150 15 QuartzCore 0x000000010d458a0e _ZN2CA5Layer16layout_if_neededEPNS_11TransactionE + 380 16 QuartzCore 0x000000010d45887e _ZN2CA5Layer28layout_and_display_if_neededEPNS_11TransactionE + 24 17 QuartzCore 0x000000010d3c663e _ZN2CA7Context18commit_transactionEPNS_11TransactionE + 242 18 QuartzCore 0x000000010d3c774a _ZN2CA11Transaction6commitEv + 390 19 UIKit 0x0000000108a3795d -[UIApplication _reportMainSceneUpdateFinished:] + 44 20 UIKit 0x0000000108a3866a -[UIApplication _runWithMainScene:transitionContext:completion:] + 2684 21 UIKit 0x0000000108a37005 -[UIApplication workspaceDidEndTransaction:] + 179 22 FrontBoardServices 0x000000010c58d253 31-[FBSSerialQueue performAsync:]_block_invoke + 16 23 CoreFoundation 0x0000000107e9c9bc __CFRUNLOOP_IS_CALLING_OUT_TO_A_BLOCK + 12 24 CoreFoundation 0x0000000107e92705 __CFRunLoopDoBlocks + 341 25 CoreFoundation 0x0000000107e924c5 __CFRunLoopRun + 2389 26 CoreFoundation 0x0000000107e91906 CFRunLoopRunSpecific + 470 27 UIKit 0x0000000108a36a72 -[UIApplication _run] + 413 28 UIKit 0x0000000108a39870 UIApplicationMain + 1282 29 paintApp 0x0000000107d7272e top_level_code + 78 30 paintApp 0x0000000107d7276a main + 42 31 libdyld.dylib 0x000000010a4d3145 start + 1 32 ??? 0x0000000000000001 0x0 + 1 ) libc++abi.dylib: terminating with uncaught exception of type NSException (lldb)
这是我的 View Controller 类:
import UIKit
class ViewControllerGallery: UIViewController, UICollectionViewDataSource, UICollectionViewDelegate {
var tableData: [String] = ["img1" , "img2"]
var tableImages: [String] = ["file1.png", "file2.png"]
var collectionView: UICollectionView!
override func viewDidLoad() {
super.viewDidLoad()
collectionView = UICollectionView(frame: self.view.frame)
collectionView.dataSource = self
collectionView.delegate = self
collectionView.registerClass(UICollectionViewCell.self, forCellWithReuseIdentifier: "Cell")
self.view.addSubview(collectionView)
// Do any additional setup after loading the view.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
return tableData.count
}
func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
let cell : ColViewCell = collectionView.dequeueReusableCellWithReuseIdentifier("Cell", forIndexPath : indexPath) as ColViewCell
cell.labelCell.text = tableData[indexPath.row]
cell.imgCell.image = UIImage(named : tableImages[indexPath.row])
return cell //UICollectionViewCell()
}
func collectionView(collectionView: UICollectionView, didSelectItemAtIndexPath indexPath: NSIndexPath) {
println("Cell \(indexPath.row) selcted")
}
}
这是我的“细胞”类,其中将细胞图像和标签连接到:
import UIKit
class ColViewCell: UICollectionViewCell {
@IBOutlet var imgCell: UIImageView!
@IBOutlet var labelCell: UILabel!
}
最佳答案
你的错误是不言自明的。在适当的位置,您设置 collectionView.dataSource
的地方有一个错误源 - 而不是实现 UICollectionViewDataSource
的东西,您设置了 UIView
实例。
我想,你需要类似的东西
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
collectionView.dataSource = self;
}
关于ios - 将 CollectionView 连接到 ViewController,连接 dataSource-Swift-XCode 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31388118/
我正在使用 node.js 和 mocha 单元测试,并且希望能够通过 npm 运行测试命令。当我在测试文件夹中运行 Mocha 测试时,测试运行成功。但是,当我运行 npm test 时,测试给出了
我的文本区域中有这些标签 ..... 我正在尝试使用 replaceAll() String 方法替换它们 text.replaceAll("", ""); text.replaceAll("", "
早上好,我是 ZXing 的新手,当我运行我的应用程序时出现以下错误: 异常Ljava/lang/NoClassDefFoundError;初始化 ICOM/google/zxing/client/a
我正在制作一些哈希函数。 它的源代码是... #include #include #include int m_hash(char *input, size_t in_length, char
我正在尝试使用 Spritekit 在 Swift 中编写游戏。目的是带着他的角色迎面而来的矩形逃跑。现在我在 SKPhysicsContactDelegate (didBegin ()) 方法中犯了
我正在尝试创建一个用于导入 CSV 文件的按钮,但出现此错误: actionPerformed(java.awt.event.ActionEvent) in cannot implement
请看下面的代码 public List getNames() { List names = new ArrayList(); try { createConnection(); Sta
我正在尝试添加一个事件以在“dealsArchive”表中创建一个条目,然后从“deals”表中删除该条目。它需要在特定时间执行。 这是我正在尝试使用的: DELIMITER $$ CREATE EV
我试图将两个存储过程的表结果存储到 phpmyadmin 例程窗口中的单个表中,这给了我 mariadb 语法错误。单独调用存储过程给出了结果。 存储过程代码 BEGIN CREATE TABLE t
我想在 videoview 中加载视频之前有一个进度条。但是我收到以下错误。我还添加了所有必要的导入。 我在 ANDROID 中使用 AIDE 这是我的代码 public class MainActi
我已经使用了 AsyncTask,但我不明白为什么在我的设备 (OS 4.0) 上测试时仍然出现错误。我的 apk 构建于 2.3.3 中。我想我把代码弄错了,但我不知道我的错误在哪里。任何人都请帮助
我在测试 friend 网站的安全性时,通过在 URL 末尾添加 ' 发现了 SQL 注入(inject)漏洞该网站是用zend框架构建的我遇到的问题是 MySQL -- 中的注释语法不起作用,因此页
我正在尝试使用堆栈溢出答案之一的交互式信息窗口。 链接如下: interactive infowindow 但是我在代码中使用 getMap() 时遇到错误。虽然我尝试使用 getMapAsync 但
当我编译以下代码时出现错误: The method addMouseListener(Player) is undefined for the type Player 代码: import java.
我是 Android 开发的初学者。我正在开发一个接收 MySql 数据然后将其保存在 SQLite 中的应用程序。 我将 Json 用于同步状态,以便我可以将未同步数据的数量显示为要同步的待处理数据
(这里是Hello world级别的自动化测试人员) 我正在尝试下载一个文件并将其重命名以便于查找。我收到一个错误....这是代码 @Test public void allDownload(
我只是在写另一个程序。并使用: while (cin) words.push_back(s); words是string的vector,s是string。 我的 RAM 使用量在 4 或 5
我是 AngularJS 的新手,我遇到了一个问题。我有一个带有提交按钮的页面,当我单击提交模式时必须打开并且来自 URL 的数据必须存在于模式中。现在,模式打开但它是空的并且没有从 URL 获取数据
我正在尝试读取一个文件(它可以包含任意数量的随机数字,但不会超过 500 个)并将其放入一个数组中。 稍后我将需要使用数组来做很多事情。 但到目前为止,这一小段代码给了我 no match for o
有些人在使用 make 命令进行编译时遇到了问题,所以我想我应该在这里尝试一下,我已经在以下操作系统的 ubuntu 32 位和挤压 64 位上尝试过 我克隆了 git 项目 https://gith
我是一名优秀的程序员,十分优秀!