1

NSURLRequest のカテゴリにプロパティを追加し、NSURLRequest に getter を実装し、NSMutableURLRequest に setter を実装するにはどうすればよいでしょうか?

私がやりたいことは、NSMutableURLRequest でいくつかのカスタム プロパティを設定し、それを UiWebView にロードすることです。NSMutableURLRequest または NSURLRequest にこれらのカスタム プロパティがあり、カスタム NSURLProtocol でそれらにアクセスできるかどうかにかかわらず、UIWebView からのすべての要求が必要です。

4

2 に答える 2

0

NSURLRequestのカテゴリにプロパティを追加し、NSURLRequestにgetterを実装し、NSMutableURLRequestにsetterを実装するにはどうすればよいですか?

ちょうどあなたは他のクラスのためにそれをするでしょう...

@interface NSURLRequest (MyCategory)

@property (nonatomic, assign) int foo;

@end


@implementation NSURLRequest (MyCatgeory)

- (int)foo
{
    return 42;
}

- (void)setFoo:(int)f
{
    otherVar = f;
}

@end
于 2013-02-27T16:20:05.863 に答える
0

NSURLRequest に追加のプロパティを追加することは、次のように実装される特別なケースです。

NSMutableURLRequest+JSONBody.h

@interface NSMutableURLRequest (JSONBody)

@property (nullable, copy, setter=mhf_setJSONBody:) id mhf_JSONBody;

@end

NSMutableURLRequest+JSONBody.m

@implementation NSMutableURLRequest (JSONBody)

-(id)mhf_JSONBody{
    return [NSURLProtocol propertyForKey:NSStringFromSelector(@selector(mhf_JSONBody)) inRequest:self];
}

-(void)mhf_setJSONBody:(id)JSONBody{
    [NSURLProtocol setProperty:JSONBody forKey:NSStringFromSelector(@selector(mhf_JSONBody)) inRequest:self];
}

@end

関連付けられたオブジェクトを介する代わりにこの方法で行うと、コピーが機能します!

于 2016-11-10T00:13:52.223 に答える