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 · Jan 21, 2017 · 5024 views
    This topic created in 3398 days ago, the information mentioned may be changed or developed.

    需求:在 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 replies    2017-01-25 09:35:45 +08:00
    arclin16
        1
    arclin16  
       Jan 21, 2017 via iPhone
    这个 xib 里面放 uiview 创建一个 uitableviewcell 子类和一个 uicollectionviewcell 子类,加载的时候一起加载这个 xib 里面的 view
    d553296416
        2
    d553296416  
       Jan 21, 2017   ❤️ 1
    xib 的动态桥接--sunnyxx
    chipmuck
        3
    chipmuck  
       Jan 22, 2017
    @arclin16 这个可行,不过给 uiview 关联 xib 的时候要选择 empty 的 xib ,否则可能会有问题。
    kitalphaj
        4
    kitalphaj  
       Jan 23, 2017
    两个 xib 分别是空的 UITableViewCell 和 UICollectionViewCell, 然后里面放一个共享的 UIView 设计成你想要的样子不就好了。另外 2 楼说的方法可以简化这个步骤。
    free9fw
        5
    free9fw  
       Jan 25, 2017
    阳神的 XXNibBridge 请服用 https://github.com/sunnyxx/XXNibBridge
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5644 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 237ms · UTC 07:21 · PVG 15:21 · LAX 00:21 · JFK 03:21
    ♥ Do have faith in what you're doing.