24462


ストーリーボード上でtableviewに設定した「Content」プロパティをコードから参照したいのですが、何か方法はあるでしょうか？  
「Static Cells」であるか「Dynamic Prototypes」であるかを判定する処理を考えています。

どうぞよろしくお願いいたします。

[![](https://i.stack.imgur.com/4DsbR.png)](https://i.stack.imgur.com/4DsbR.png)


CC BY-SA 3.0
2016-04-19T06:43:14.410
24148
2016-04-29T15:27:53.583
2020-06-17T08:14:45.997
-1
question
swift uitableview
TableviewがStatic CellsかDynamic Prototypesであるか判定したい


Story Board上で設定できる`content`はプロパティではありません。

Story
BoardはUIのクラスをシリアライズしますが、そのときどのようなデータソースを使うのかという違いがあるだけで、両者とも普通の`UITableView`なので、通常の方法では識別できません。

そもそもコード上での両者の実装は、まったく別のものになるはずですので、`content`の値を知る必要があるケースはないように思います。

* * *

Static
Cellsの情報は`staticDataSource`という`UITableViewDataSource`が持っているので、それを利用した判定を書くこと自体はできるのですが、iOS
SDKのPrivateな領域なので、実際に使える方法ではありません（リジェクトされる可能性が高い）。

[code]

    if self.valueForKey("staticDataSource") != nil {
        print("static")
    } else {
        print("dynamic")
    }
    
[/code]

### 参考

  * [Determine if UITableView has static cells or dynamic prototypes programmatically?](https://stackoverflow.com/questions/20130855/determine-if-uitableview-has-static-cells-or-dynamic-prototypes-programmatically)


CC BY-SA 3.0
2016-04-29T15:27:53.583
24462
2016-04-29T15:27:53.583
2017-05-23T12:38:56.083
-1
5337
24148
answer