2013-03-16 3 views
0

Привет, в моем приложении у меня есть массив. В том, что у меня есть число компонентов UIView и UIImageView, и я хочу получить каждый компонент из этого массива и должен знать, что это изображение или представление, если это изображение, мне нужно изменить изображение для этого изображения. Но у меня нет любая идея, как знать, что компонент является просмотром изображения или представлением. Если кто-нибудь знает, сообщите мне, как узнать тип компонента. Пожалуйста, помогите мне в этом вопросе.Как проверить, является ли компонент UIView или UIImageView

for (int i=0; i<[array count]; i++){ 
    // here i have to know wether the component is imageview or view and based on that i have to do below operations 
    UIView *view1=[array objectAtIndex:i]; 
    NSLog(@"%@",[array objectAtIndex:i]); 
    if (130==view1.tag){ 
     view1.backgroundColor=[UIColor redColor]; 
    } 
    UIImageView *image1=[array objectAtIndex:i]; 
    if (132==image1.tag){ 
     image1.image=[UIImage imageNamed:@"Approve2.png"]; 
    } 
} 

ответ

7

Использование isKindOfClass

Пример:

if ([originalValue isKindOfClass:[UIImageView class]]){ 

    UIImageView *myImageView = (UIImageView *)originalValue; 

} 
+0

привет огромное спасибо вашему быстрому ответу, спасите меня от неприятностей ... спасибо много барана ... – Naresh

+0

Привет, может помочь мне еще на основе предложений ура, я изменил свой код как таковой – Naresh

+0

, тогда вопрос ...? –

-1

Вы можете проверить класс интроспекции

Попробуйте это

if([obj1 class] == [obj2 class]){ 

    //same class 
} 

Несколько дополнительных вещей, которые вы можете чувствовать себя удобно

Class Introspection 
· Determine whether an objective-C object is an instance of a class 
     [obj isMemberOfClass:someClass]; 
· Determine whether an objective-C object is an instance of a class or its descendants 
     [obj isKindOfClass:someClass]; 
· The version of a class 
     [MyString version] 
· Find the class of an Objective-C object 
     Class c = [obj1 class]; 
     Class c = [NSString class]; 
· Verify 2 Objective-C objects are of the same class 
     [obj1 class] == [obj2 class] 
+0

Спасибо за ваш ответ мр Anoop, Большое спасибо. – Naresh

+0

@ user2119204 Немногие продукты, которые могут пригодиться вам. –

+0

Привет, аноним, спасибо, что так много для ответа ур. Можете ли вы привести один пример этой процедуры, например, можно сравнить uiview и uiimageview.it, поможет мне многое. – Naresh

Смежные вопросы