我對objective-j和框架相當陌生,所以我試圖鑽取並理解一些代碼,但我迷失於對象(或結構)CGRect。Objective-J和卡布奇諾以及CGRect
以下是完整的文檔:Cappuccino
好了,我現在向下鑽取,我嘗試學習CPView類是如何工作的:CPView.j
現在,我看到的CGRect對象(或結構)無處不在我只是不能爲我的生活找出CGRect的定義。這個怎麼用?我覺得我錯過了一些東西。
我發現的最接近的東西是CGGeometry.j和CGGeometry.h,但仍然沒有定義CGRect結構或對象。
有人可以幫我嗎?如何實例化一個CGRect結構或對象,以及它在哪裏定義?它包含什麼?等等等等......
我知道創建CGRect的主要方法是使用CGRectMake函數,如here所述。
我只是不覺得我掌握了這是如何工作的。
謝謝。
更新:
看代碼一些經過:23行,行30和37行,似乎有點像JavaScript對象的描述。它是否正確?我不確定...是什麼翻譯這些.j文件知道CGRect已經是什麼?這是我們可以使用(CGRect)類型和對象的原因嗎? CGRects看起來像他們是不一樣到目前爲止我見過的任何其他對象,我想知道爲什麼:)。
再次感謝。
00023 #define _CGPointMake(x_, y_) { x:x_, y:y_ }
00024 #define _CGPointMakeCopy(aPoint) _CGPointMake(aPoint.x, aPoint.y)
00025 #define _CGPointMakeZero() _CGPointMake(0.0, 0.0)
00026
00027 #define _CGPointEqualToPoint(lhsPoint, rhsPoint) (lhsPoint.x == rhsPoint.x && lhsPoint.y == rhsPoint.y)
00028 #define _CGStringFromPoint(aPoint) ("{" + aPoint.x + ", " + aPoint.y + "}")
00029
00030 #define _CGSizeMake(width_, height_) { width:width_, height:height_ }
00031 #define _CGSizeMakeCopy(aSize) _CGSizeMake(aSize.width, aSize.height)
00032 #define _CGSizeMakeZero() _CGSizeMake(0.0, 0.0)
00033
00034 #define _CGSizeEqualToSize(lhsSize, rhsSize) (lhsSize.width == rhsSize.width && lhsSize.height == rhsSize.height)
00035 #define _CGStringFromSize(aSize) ("{" + aSize.width + ", " + aSize.height + "}")
00036
00037 #define _CGRectMake(x, y, width, height) { origin: _CGPointMake(x, y), size: _CGSizeMake(width, height) }