2011-01-31 7 views
0

私は、ユーザーがビュー内のどこに触れるかに基づいて、実行時にボタンを追加するiPadアプリケーションを持っています。どのようにすべてのコントロールを通過し、特定のコントロールを操作するのですか?

今、これらのボタンをすべて一度に削除する必要があります。

私は各ボタンのタグを非常に高く設定し、ドロップされたボタンのタイプによってグループ化しました。

どのようにビューのすべてのボタンをループして、右の分類に該当する場合は削除しますか?

+0

未回答の質問で回答を選択することを検討する必要があります。 – Moshe

答えて

6

すべてのUIButtonを削除します。あなたのニーズにそれを採用してください。タグを使用する場合は、ビューにとどまるすべてのボタンにタグを付けることをお勧めします。

for (id object in [self.view subviews]) { 
    if ([object isKindOfClass:[UIButton class]]) { 
     [object removeFromSuperview]; 
    } 
} 

それとも、もはやそれを必要としない場合は、あなたがそれらを作成するときNSMutableSetに各UIButtonを追加し、セットのすべてのボタンを削除することができます。

+0

ええと、私はタグを見て....各カスタムボタンの一意のタグIDを持って見て、追加し、私は一意のIDが見つかった場合、私はループを介して、それは洗い流された。ありがとうございました – pithhelmet

0

唯一のタグベースのメソッドは、UIView#viewForTagであり、単一のオブジェクトを返します。 (私はそれがあなたがそのタグで追加した最後のビューだと信じています)。しかし、上記のコードをあなたの目的に合わせて変更することができます:

for (UIView *iView in [self.view subviews]) { 
    if (iView.tag == TARGET_CLASSIFICATION_TYPE) { 
     [iView removeFromSuperview]; 
    } 
} 
関連する問題