0

[myTable reloadData] が機能せず、[myTable deselectRowAtIndexPath:indexPath animation:YES] も機能しません。

以前、これらの関数が両方とも機能する UITableViewController をサブクラス化しました。次に、クラスをデリゲートを持つサブクラス UIViewController に変更して、xib を使用できるようにしました。それ以来、これらの機能は機能しなくなりました。

ボタンのクリックで reloadData がトリガーされるように設定しました。デバッガーを何度も実行すると、(ボタンをクリックする前に) テーブルは正常に読み込まれますが、reloadData によってテーブル メソッドがトリガーされていないことがわかりました。デリゲート ソースとデリゲートはファイルの所有者に設定されているので、問題ありません。

どうもありがとう。

4

1 に答える 1

0

私の推測では、myTable に設定されたアウトレットがありません。これは、データソースとデリゲートが機能する理由を説明しますが、データをリロードする呼び出しは機能しません。

これが問題であると仮定すると、@interface に次のものが必要です。

@property (nonatomic, retain) IBOutlet UITableView *myTable;

およびインスタンス変数UITableView *myTable@synthesize myTable;次に、実装に必要です。

次に、インターフェイス ビルダーを使用して、ファイルの [所有者] > [接続] タブの myTable エントリからレイアウト内のテーブル ビューにドラッグして、テーブル ビューをこのアウトレットに割り当てる必要があります。

これが問題であると仮定すると、テーブル ビューで reloadData などのメソッドを呼び出すことができるようになります。

于 2011-03-28T04:25:29.987 に答える