基本的UIImageView问题

时间:2011-05-06 09:17:16

标签: objective-c

嘿,当你设置UIImageView的坐标时,它将UIImageView分别设置在右上角。有没有办法让坐标适用于左下角?

3 个答案:

答案 0 :(得分:1)

如果你有视图的引用,那么你可以设置它的锚点uisng
view.layer.anchorPoint = CGPointMake(0,1); //你的左下角..

0,0表示左上角
 默认值为0.5,0.5,即中心
max是1,1,是右下角
并且不要忘记导入<QuartzCore/QuartzCore.h>

答案 1 :(得分:0)

UIImageView继承的

UIView定位设置。这就是为什么您只能通过frame的{​​{1}}和center属性进行操作的原因。但你可以'模拟'左下角定位:

UIImageView

答案 2 :(得分:0)

回答第二个问题...只需在创建uiimageview的地方导入这些文件

@interface UIImageView (MyCategory)
- (id)init;
@end



@implementation UIImageView (MyCategory)

- (id)init {
    self = [super init];
    if (self) {
        self.layer.anchorPoint = CGPointMake(0, 1);
    }
    return self;
}

@end

上面的代码可能会导致问题,因为UIImageView的init也可能正在执行其他任务,所以你应该这样做

@interface UIImageView (MyCategory)
- (id)initMyImageView;
@end



@implementation UIImageView (MyCategory)

- (id)initMyImageView {
    [self init];
    self.layer.anchorPoint = CGPointMake(0, 1);
    return self;
}

@end

并像[[UIImageView alloc] initMyImageView];

一样使用它