0

最初の背景:3つのUITableViewが機能するUIViewControllerがありました。4番目のテーブルを追加しましたが、コントローラーは4番目のテーブルに対してUITableViewDelegateメソッドまたはUITableViewDataSourceメソッド(たとえば、tableView:cellForRowAtIndexPathなど)を呼び出さず、最初の3つだけを呼び出しました。何度も泣きながら歯を食いしばった後、私は電話をかける必要があることに気づきまし[self.myFourthTable setDelegate:self]た。[self.myForthTable setDelegate:self]viewDidLoad

最初の3つのテーブルに対して、これらのメソッドのいずれかを呼び出したことはありません。何が起きてる?最初の3つではなく、4番目のテーブルにこれらを呼び出さなければならなかったのはなぜですか?私の知る限り、4番目は最初の3つと同じように扱う必要があります。これらはすべて、View Controllerのプロパティであり、すべて一緒に合成され、コードで同じように対処します。

4

1 に答える 1

2

私の推測では、これらのUITableViewsはInterfaceBuilderに追加されています。最初の3つには、InterfaceBuilderのアウトレットを介してデータソースとデリゲートが設定されています。あなたは4番目でそれをしなかったので、コードを介してそれをする必要がありました。

スクリーンショットの例

于 2012-10-25T13:40:45.437 に答える