mno*_*rt9 2 objective-c storyboard ios uicollectionview uicollectionviewcell
我有多个集合视图需要使用相同的原型单元格.现在,我在故事板中复制每个集合视图中的原型单元格(如下所示).这不是很干,在对单元格进行故事板更改时会变得很痛苦.
是否可以在故事板中的一个位置定义单元格?
或者我尝试只使用1个集合视图,但我无法获得单元格堆叠和垂直滚动的3列布局,因此我移动到3个集合视图.
是的,这是可能的.我从不在故事板中设计单元格(UITableView或UICollectionView单元格).有可能,您需要重复使用它们,就像这里的情况一样.
首先,创建一个新视图("文件">"新建">"文件"),然后从"用户界面"部分中选择"视图"选项.你选择哪个设备系列并不重要,所以给它一个名字(我叫我的NibCell).它将在画布中打开 - 第一项工作是删除现有视图,并从对象浏览器中拖动Collection View Cell.
您还可以创建类的子UICollectionViewCell类,并将其设置为接口构建器中的xib文件的类.一旦你创建了xib并将元素连接到自定义类 - 你需要在你的类中注册它(就像UICollectionView在其中一样)(不要忘记首先将它导入自定义单元类!)
UINib *cellNib = [UINib nibWithNibName:@"NibCell" bundle:nil];
[self.collectionView registerNib:cellNib forCellWithReuseIdentifier:@"cvCell"];
Run Code Online (Sandbox Code Playgroud)
你会像这样使用它:
-(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath {
static NSString *cellIdentifier = @"cvCell";
CVCell *cell = (CVCell *)[collectionView dequeueReusableCellWithReuseIdentifier:cellIdentifier forIndexPath:indexPath];
//Setup the cell for use
return cell;
}
Run Code Online (Sandbox Code Playgroud)
这通常就是它的全部内容.希望这可以帮助!
| 归档时间: |
|
| 查看次数: |
2182 次 |
| 最近记录: |