2016-06-27 11 views
0

いくつかのアプリケーションを作成した後、私はUITableViewCellの使用について質問しています。ほとんどのプロジェクトでは、UILabels/UIImageView/UISwitchの組み合わせ以外のものを含んでいないセル用のファイルを作成しています。これらのファイルを何度も作成するのは苦労し、そこにはロジックがあまりありません。UITableViewCellの戦略

私は現在、さまざまなプロジェクトの因子UIKitコードの助けになる小さなポッドの作成を開始しています。この特定の対象をどのように最適化できるか疑問に思っていました。

私が最初にその方法でいくつかのデフォルトのクラスを持っていることについて考えた:

public class OneLabelCell : UITableViewCell { 
    @IBOutlet weak var label: UILabel! 
} 

public class TwoLabelsCell : OneLabelCell { 
    @IBOutlet weak var secondLabel: UILabel! 
} 

public class OneLabelOneImageCell : OneLabelCell { 
    @IBOutlet weak var firstImageView: UIImageView! 
} 

そして、すべての道を行くことによって、私はすべての私のニーズをカバーするだけの単一のクラスを有していると考えた:

public class MagicCell : UITableViewCell { 

    @IBOutlet weak var label: UILabel! 
    @IBOutlet weak var secondLabel: UILabel! 

    @IBOutlet weak var firstImageView: UIImageView! 

    @IBOutlet weak var firstSwitch: UISwitch! 

    [...] 
} 

あなたの意見は?各方法の賛否両論は何ですか?

ありがとうございます!

+0

あなたはストーリーボードを使用していますか? UITableViewCellの 'title'ラベルを使うことができます。 –

答えて

0

多くのプロジェクトで本当に同じセルタイプを再利用しているのであれば、ポッドを作ることができます。

しかし、私はそれをしません。各プロジェクトには、特定の変更が必要な可能性があります。この場合、プロジェクトごとにそれらのファイルを作成することは理にかなっています。カスタムUITableViewCellクラスを持つことから多くの利益を得ることはできません。

多分あなたは時間/リソースを各プロジェクトごとに作成しているようです。ポッドを作成すると、プロジェクト間でセルの差異がほとんどない場合に限り、廃棄物の削減に役立ちます。

+0

ありがとうございます。私は、異なるプロジェクト間で頻繁に使用するいくつかのコードを配置するために小さなポッドを作成しました。これはUITableViewCells専用のポッドではありません。平均的なプロジェクトには5〜10個のカスタムセルがあり、毎回同じようなファイルを作成しないようにするのは本当にうれしいです。 – lorenzo

+0

既存のポッドに追加しているだけなら、それほど悪くはありません。だから今、5から10個のカスタムセルがプロジェクト間で多くの編集を必要としない限り、それを行ってポッドに追加する限り、もう一度言いたいと思います。 – Lucas