Re: Obtaining class of key at runtime
Re: Obtaining class of key at runtime
- Subject: Re: Obtaining class of key at runtime
- From: Devarshi Kulshreshtha <email@hidden>
- Date: Mon, 06 Oct 2014 22:42:47 +0530
Scenario 1: Do not initialize instance variables in initWithPlist method
>
> In this case if I try to log class of key in setValue:forKey method,
> it prints nil
>
>
> That doesn't make any sense — it's illegal to pass a nil key to
> setValue:ForKey:. Who is calling this method?
This method is automatically called, since I am invoking
setValuesForKeysWithDictionary: in init method.
> Is there any way to achieve the same result in 'Scenario 1', may be by
> using any API from objective c runtime?
>
>
> Again, who is supposed to be calling setValue:forKey: if your init method
> isn't calling it?
> And why do you want to know the class of the key if it's clearly declared as
> NSString already? It's always going to be a string.
Actually I am indirectly trying to identify class of property, through
key parameter, the NSLog statement added within - setValue: forKey: is
wrong, I was trying to do something like this:
- (void)setValue:(id)value forKey:(NSString *)key
{
NSLog(@"key class: ",[[self valueForKey:key] class]); // it is
printing nil, prints correct value if key is initialized in init
method
}
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden