I need to test whether the object is of type NSString or UIImageView. How can I accomplish this? Is there some type of "isoftype" method?
I need to test whether the object is of type NSString or UIImageView. How can I accomplish this? Is there some type of "isoftype" method?
If your object is myObject, and you want to test to see if it is an NSString, the code would be:
[myObject isKindOfClass:[NSString class]]
Likewise, if you wanted to test myObject for a UIImageView:
[myObject isKindOfClass:[UIImageView class]]
You would probably use
- (BOOL)isKindOfClass:(Class)aClass
This is a method of NSObject.
For more info check the NSObject documentation.
This is how you use this.
BOOL test = [self isKindOfClass:[SomeClass class]];
You might also try doing somthing like this
for(id element in myArray)
{
NSLog(@"=======================================");
NSLog(@"Is of type: %@", [element className]);
NSLog(@"Is of type NSString?: %@", ([[element className] isMemberOfClass:[NSString class]])? @"Yes" : @"No");
NSLog(@"Is a kind of NSString: %@", ([[element classForCoder] isSubclassOfClass:[NSString class]])? @"Yes" : @"No");
}