我这样做有困难:
CALayer *myLayer = myUIImageView.layer; //works, no error from compiler
CGRect visRect = myLayer.visibleRect; //fat error, see below
Run Code Online (Sandbox Code Playgroud)
我得到的错误是:
错误:请求成员'visibleRect'不是结构或联合
但是文件说:
visibleRect在其自己的坐标空间中返回接收器的可见区域.(只读)@property(readonly)CGRect visibleRect
我已经包含了QuartzCore.framework,CoreGraphics.framework,UIKit.framework,Foundation.framework.
所以,如果它返回一个CGRect,为什么它不起作用?任何的想法?
我99%肯定你错过了import语句.仅仅在项目中包含框架是不够的.
我刚刚在一个全新的项目中尝试了这个,它按预期工作.以下是我添加到ViewController的内容.
#import <QuartzCore/QuartzCore.h>
Run Code Online (Sandbox Code Playgroud)
...
- (void)viewDidLoad
{
[super viewDidLoad];
CALayer *test_layer = self.view.layer;
CGRect test_rect = test_layer.visibleRect;
NSLog(@"%f, %f", test_rect.origin.x,
test_rect.size.width);
}
Run Code Online (Sandbox Code Playgroud)
输出是:
2009-04-21 17:53:55.999 Throwaway[72422:20b] 0.000000, 320.000000
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1796 次 |
| 最近记录: |