1

我正在使用JSQMessagesViewController向我的应用程序添加聊天功能。在 UIViewController 中,我初始化了一个 JSQMessagesCollectionView:

JSQMessagesCollectionView *jsq = [[JSQMessagesCollectionView alloc] initWithFrame:CGRectMake(0, 0, self.view.bounds.size.width, self.view.bounds.size.height)];
[self.view addSubview:jsq];

然而,这给了我这个错误:

'NSInvalidArgumentException', reason: 'UICollectionView must be initialized with a non-nil layout parameter'

我如何将视图包含在我的视图控制器中?一个简短的解释将不胜感激。

4

1 回答 1

1

JSQMessagesCollectionView中,没有从您的类初始化类的公共方法。但是有一种私有的 init 方法可用,即- (instancetype)initWithFrame:(CGRect)frame collectionViewLayout:(UICollectionViewLayout *)layout.

这就是你得到nil的原因。

根据文档,最好使用JSQMessagesViewController

希望解决方案有所帮助。

于 2016-03-10T10:59:58.527 回答