-1

UIScrollViewで使用したいいくつかのメソッドとプロパティをサブクラス化して追加しましたUITableView。テーブル ビューを UIScrollView の代わりにカスタム scrollView から継承させることは可能ですか?

4

2 に答える 2

2

Objective-C の強力な機能の 1 つはカテゴリです。

Objective-Cからの抜粋: カテゴリ:

サブクラス化の代わりに、Objective-C カテゴリはメソッドをクラスに追加する手段を提供します。興味深いのは、カテゴリを通じて追加したメソッドは、いわばクラス定義の一部になるということです。つまり、NSString クラスにメソッドを追加すると、NSString のすべてのインスタンスまたはサブクラスがそのメソッドにアクセスできるようになります。

于 2013-03-14T14:38:52.407 に答える
0

延長できるはずですUIScrollView。拡張 (またはそれぞれのカテゴリ) の範囲内で、拡張はすべてのサブクラスにも適用する必要があります。しかし、私はそれを自分で試したことはありません。

UIScrollViewサブクラス化して (名前付きとしましょう)、代わりにサブクラス MyScrollViewMyScrollViewの既存のサブクラスを作成することはできません。しかし、拡張は機能するはずです。UITableViewUIScrollViewUIScrollView

ただし、拡張機能でメソッド abc を提供し、abcも実装MySuperViewしてUITableViewいる場合、UITableView の abc が呼び出されます。したがって、UITableView を直接拡張またはサブクラス化する場合と比較して、この構築の利点は実際にはわかりません。

于 2013-03-14T14:42:53.820 に答える