V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
iOS 开发实用技术导航
NSHipster 中文版
http://nshipster.cn/
cocos2d 开源 2D 游戏引擎
http://www.cocos2d-iphone.org/
CocoaPods
http://cocoapods.org/
Google Analytics for Mobile 统计解决方案
http://code.google.com/mobile/analytics/
WWDC
https://developer.apple.com/wwdc/
Design Guides and Resources
https://developer.apple.com/design/
Transcripts of WWDC sessions
http://asciiwwdc.com
Cocoa with Love
http://cocoawithlove.com/
Cocoa Dev Central
http://cocoadevcentral.com/
NSHipster
http://nshipster.com/
Style Guides
Google Objective-C Style Guide
NYTimes Objective-C Style Guide
Useful Tools and Services
Charles Web Debugging Proxy
Smore
shippo7
V2EX  ›  iDev

用 xib 创建可复用的 TableViewCell/CollectionViewCell 问题

  •  
  •   shippo7 · 2017-01-21 01:00:25 +08:00 · 4204 次点击
    这是一个创建于 2882 天前的主题,其中的信息可能已经有所发展或是发生改变。

    需求:在 TableView 和 CollectionView 中显示相同的 Cell

    我创建了一个 xib ,将它的 custom class 设置到一个 TableViewCell class 之后就可以在 TableView 中 register 作为 TableViewCell 。但是我现在还想将这个 xib 在另一个 CollectionView 中复用,但是不行,因为 CollectionView 中无法调用 TableViewCell 。

    我现在如何解决这个需求?

    • 创建两个 xib ,分别用于 TableView 和 CollectionView 。但是这样违背了复用的初衷
    • 在同一个 xib 中创建两个 view ,分别设置为 TableViewCell 和 CollectionViewCell 。这样是否可行?如何 register 同一个 xib 中的不同 view ?
    • 还有其它更好的方法吗?
    5 条回复    2017-01-25 09:35:45 +08:00
    arclin16
        1
    arclin16  
       2017-01-21 01:14:55 +08:00 via iPhone
    这个 xib 里面放 uiview 创建一个 uitableviewcell 子类和一个 uicollectionviewcell 子类,加载的时候一起加载这个 xib 里面的 view
    d553296416
        2
    d553296416  
       2017-01-21 09:20:29 +08:00   ❤️ 1
    xib 的动态桥接--sunnyxx
    chipmuck
        3
    chipmuck  
       2017-01-22 00:14:13 +08:00
    @arclin16 这个可行,不过给 uiview 关联 xib 的时候要选择 empty 的 xib ,否则可能会有问题。
    kitalphaj
        4
    kitalphaj  
       2017-01-23 07:45:16 +08:00
    两个 xib 分别是空的 UITableViewCell 和 UICollectionViewCell, 然后里面放一个共享的 UIView 设计成你想要的样子不就好了。另外 2 楼说的方法可以简化这个步骤。
    free9fw
        5
    free9fw  
       2017-01-25 09:35:45 +08:00
    阳神的 XXNibBridge 请服用 https://github.com/sunnyxx/XXNibBridge
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2706 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 14:30 · PVG 22:30 · LAX 06:30 · JFK 09:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.