以前は継承を使用していた可能性のあるいくつかの項目について、カテゴリを使用して頭を悩ませています。
私が今していることは、それをどのように実装すべきかわからないという、よりベストプラクティスの質問です。UIActivityIndicatorView
基本的にアクティビティインジケーターを任意のビューに配置するために使用されるカテゴリを作成しています。以下に、私がそれをどのように行っているかのコード例を示します。私の主な質問は、これが良いかどうかです。そして、それが事実ならなぜそれが悪いのかについてのコメントをいただければ幸いです。ありがとう。
カテゴリ:
@interface UIActivityIndicatorView (Customizations)
- (UIActivityIndicatorView *) inView:(UIView *) target;
@end
実装:
@implementation UIActivityIndicatorView (Customizations)
- (UIActivityIndicatorView *) inView:(UIView *) target {
[self startAnimating];
[self setHidden:NO];
self.frame = target.bounds;
self.backgroundColor = [UIColor colorWithRed:0.0f green:0.0f blue:0.0f alpha:0.6f];
return self;
}
@end
次に、次のように使用します。
[background addSubview:[loader inView:background]];
別の方法としては、初期化関数を作成してコンテナビューを取得し、「スタイル設定された」ビューを返すか、何も返さずに(void
)、メソッドにスタイル設定を行わせることだと思います。
だから私はこれをどのように扱うかについてのガイダンスを探しています。