ios - 以编程方式添加 UICollectionView 时应用崩溃

标签 ios objective-c uicollectionview uicollectionviewcell uicollectionviewflowlayout

我正在尝试在我的项目中以编程方式添加带有自定义 UICollectionViewCell 的 UICollectionView。

这是我添加 CollectionView 的实现

- (void)setUpCollectionView{
    UICollectionViewFlowLayout *layout=[[UICollectionViewFlowLayout alloc] init];
    layout.scrollDirection = UICollectionViewScrollDirectionVertical;
    [layout setMinimumLineSpacing:1];
    [layout setMinimumInteritemSpacing:1];
    [layout setSectionInset:UIEdgeInsetsMake(0, 0, 0, 0)];
    [layout setScrollDirection:UICollectionViewScrollDirectionVertical];

    self.collectionView =[[UICollectionView alloc] initWithFrame:self.vwChecklistsContainer.frame collectionViewLayout:layout];
    [self.collectionView setDataSource:self];
    [self.collectionView setDelegate:self];

    UINib *cellNib = [UINib nibWithNibName:@"MyChecklistsCell" bundle:nil];
    [self.collectionView registerNib:cellNib forCellWithReuseIdentifier:@"MyChecklistsCell"];
    [self.vwChecklistsContainer addSubview:self.collectionView];
}

这个“setUpCollectionView”函数是从我的 View Controller 的 ViewDidLoad() 调用的。

我刚刚在 MyChecklistsCell 中实现了这两个函数。

- (void)awakeFromNib {
     [super awakeFromNib];
    // Initialization code
}

- (void)setData:(NSDictionary *)dict{
    self.lblChecklistType = dict[SERVER_CHECKLIST_TYPE];
    self.lblEndTime = dict[SERVER_END_TIME];
    self.lblStartTime = dict[SERVER_START_TIME];
    self.lblDescription = dict[SERVER_DESCRIPTION];
}

谁能帮我解决这个问题?谢谢。

最佳答案

试试这个。

- (void)setData:(NSDictionary *)dict{
        self.lblChecklistType = [NSString stringWithFormat:@"%@",dict[SERVER_CHECKLIST_TYPE]];
        self.lblEndTime = [NSString stringWithFormat:@"%@",dict[SERVER_END_TIME]]; ;
        self.lblStartTime = [NSString stringWithFormat:@"%@",dict[SERVER_START_TIME]]; ;
        self.lblDescription = [NSString stringWithFormat:@"%@",dict[SERVER_DESCRIPTION]];
  }

错误表示您在 NSNumber 上使用 NSString 方法。请检查您的数据是否为字符串。

希望对您有所帮助。

关于ios - 以编程方式添加 UICollectionView 时应用崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46582852/

相关文章:

objective-c - 当tableview从URL获取数据时获取EXC_BAD_ACCESS?

iphone - 如何在Three20的AppDelegate中添加全局右栏按钮(UINavigationController)

ios - UICollectionView Section Header 坚持某个 Y

ios - spritekit 中的应用内购买逻辑

ios - UIGestures 与手动控制

objective-c - 指针在 Objective C 实例中的位置

ios - 如何调整 uicollectionview 单元格中 ImageView 的位置?

ios - UICollectionView 水平滚动照片库与 swift

ios - SwiftUI - 从 ToolbarItem 内的 Button 显示警报

ios - 应用程序需要等待互联网连接