サブビューを全部消すカテゴリ
あるUIViewオブジェクトで仮に名前をbaseViewとしておくよ、これにいろいろとviewとかlabelなんかを乗せた後、不要になったら全て削除する時ってあるよね。
こんな場合、削除するためによくこんな記述をしてたんだ。
こういうのもカテゴリで書いておけばすっきりするよねってことでやってみたよ。
実装部分はこんな感じで。
こんな場合、削除するためによくこんな記述をしてたんだ。
{ for (UIView *view in [baseView subviews]) { [view removeFromSuperview]; } }↑単にbaseViewに乗ってるviewオブジェクトを片っ端からremoveFromSuperviewしてるってだけなんだけどさ。
こういうのもカテゴリで書いておけばすっきりするよねってことでやってみたよ。
実装部分はこんな感じで。
@implementation UIView (RemoveAllSubviews) -(void)removeAllSubviews { for (UIView *view in [self subviews]) { [view removeFromSuperview]; } } @endこうしておけば、上のコードは
{ [baseView removeAllSubviews]; }って一行で書くことができる。ああ快感!
<< Gingerがすごい!のか? TopPage CGPointもカテゴリで配列へ >>
トラックバック
トラックバックURL
http://ringsbell.blog117.fc2.com/tb.php/767-d767a697
http://ringsbell.blog117.fc2.com/tb.php/767-d767a697