0
在.h文件:這是什麼聲明?
@interface HitTestTool : NSObject
CGRect HitTestingBounds(CGRect bounds, CGFloat minimumHitTestWidth, CGFloat minimumHitTestHeight);
@end
,並在.m文件:
@implementation HitTestTool
CGRect HitTestingBounds(CGRect bounds, CGFloat minimumHitTestWidth, CGFloat minimumHitTestHeight) {
CGRect hitTestingBounds = bounds;
if (minimumHitTestWidth > bounds.size.width) {
hitTestingBounds.size.width = minimumHitTestWidth;
hitTestingBounds.origin.x -= (hitTestingBounds.size.width - bounds.size.width)/2;
}
if (minimumHitTestHeight > bounds.size.height) {
hitTestingBounds.size.height = minimumHitTestHeight;
hitTestingBounds.origin.y -= (hitTestingBounds.size.height - bounds.size.height)/2;
}
return hitTestingBounds;
}
讓我很困惑,是一個方法或屬性我以前從未見過這個?
它似乎是一個方法,但正確的格式是這樣的:
- (void) foo;
或類似性質:
@property (nonatomic,strong) some property;
這樣的,對不對?
那麼編寫CGRect方法的方法是什麼?
這看起來像一個放錯位置的聲明(和執行)功能。你可以自由地將它從'@interface'和'@ implementation'塊中移出。對於我來說, – Eimantas
看起來像一個標準的ANSI-C函數,因爲你知道Objective-C是ANSI-C的一個子集,所以標準的ANSI-C解決方案在這裏非常受歡迎。 – holex
@Eimantas謝謝 – Neko