Центр [UIColor colorWithPatternImage]? - PullRequest
       25

Центр [UIColor colorWithPatternImage]?

1 голос
/ 30 сентября 2011

Я не смог найти ничего о том, как вы можете центрировать «изображение» при использовании (возможно, вы не можете):

[self setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"background"]]];

Установка моего [self setContentMode:UIContentModeCenter]; не помогает.

Нужно ли рисовать изображение вручную (либо в drawRect, либо в настройках CALayer? Какое из них предпочтительнее?

1 Ответ

2 голосов
/ 30 сентября 2011

Я думаю, что вы на неправильном пути: вы создаете UIColor из шаблона (шаблон уже подразумевает, что это повторяющееся изображение).В общем, вы не можете, чтобы ваш шаблон не повторялся и не центрировался.

Если вы просто хотите, чтобы в качестве фона вашего UIView было просто изображение, просто добавьте его как подпредставление и отцентрируйте его.

UIImage* img = [UIImage imageNamed:@"yourfile.png"];
UIImageView* imgView = [[UIImageView alloc]initWithImage: img];

[yourUIView addSubview: imgView];
imgView.center = CGPointMake(yourUIView.frame.size.width/2, yourUIView.frame.size.height/2);

Теперь - добавьте больше подпредставлений к вашему "yourUIView"и они будут отображаться поверх изображения - таким образом, изображение становится фоном.

Так что ... не нужно ничего рисовать самостоятельно.

...