Основной вопрос UIImageView - PullRequest
0 голосов
/ 06 мая 2011

Привет, ребята, когда вы устанавливаете координаты UIImageView, он устанавливает UIImageView, соответствующий верхнему правому углу. Можно ли как-нибудь применить координаты к левому нижнему углу?

Ответы [ 3 ]

1 голос
/ 06 мая 2011

если у вас есть ссылка на вид, вы можете установить его точку привязки uisng
view.layer.anchorPoint = CGPointMake(0,1); // ваш левый нижний угол ..

0,0 означает левый верхний угол
по умолчанию0.5.0.5, который является центром
, макс. 1,1, который находится в нижнем правом углу
, и не забудьте импортировать <QuartzCore/QuartzCore.h>

0 голосов
/ 06 мая 2011

Ответьте на второй вопрос ... Просто импортируйте эти файлы, где вы создаете 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 также может выполнять какую-то другую задачу, поэтому вы должны сделать, как

@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];

0 голосов
/ 06 мая 2011

UIImageView настройки позиционирования, унаследованные от UIView.Вот почему вы можете манипулировать только frame и center свойствами вашего UIImageView.Но вы можете «имитировать» позиционирование в левом нижнем углу:

UIView *yourView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, width, height)];
int bottomLeftX, bottomLeftY;

CGRect rect = yourView.frame;
yourView.frame = CGRectMake(bottomLeftX, bottomLeftY - rect.size.height, rect.size.width, rect.size.height);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...