-4

そのビューにアクセスしたときに、アプリケーション内のすべてのviewcontrollersのUInavigationbarとself.viewまたはwindowのサブビューが何であるかを特定する必要があります.どうすればそれを行うことができますか.コントロールがuibarbuttonアイテムまたはuitoolbarタイプであるかどうかを特定する方法?サンプルコードは以下にあります。

for (UIView *tempview in self.view.subviews) {
    if ([[tempview superclass] isSubclassOfClass:[UIControl class]] || [tempview isKindOfClass:[UIControl class]] || [tempview isKindOfClass:[UIView class]] || [[tempview superclass] isSubclassOfClass:[UIView class]]) {
        NSLog(@"Desc : %@",[tempview description]);            
    }
}   
4

1 に答える 1

0

次のコードを使用して、さまざまなコントロールを見つけることができます

-(void)getSubviews:(UIView *)parent{
   for(UIView *subview in parent.subviews){
        if([subview isKindOfClass:[UITableView class]]){
              //tableview
        }else if([subview isKindOfClass:[UIButton class]]){
             //UIbutton
        }
        //so on
   }
}

しかし、あなたの要件に従って、すべてのコントロールにボタンを追加できるのではないかと心配しています..

于 2013-08-13T12:40:11.227 に答える