Изображение UIViewController

Как установить фоновое изображение моего UIViewController? Каков код для этого? Прямо сейчас у меня

self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"image.jpg"]];

но мне не нужен шаблон. Я хочу, чтобы он правильно заполнил экран.

Ответы

Ответ 1

вы можете использовать:

UIImageView *backgroundImage = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"Blah.png"]];

[self.view addSubview:backgroundImage];
[self.view sendSubviewToBack:backgroundImage];
[backgroundImage release];

Руководство по изображению Apple HD

Ответ 2

self.view.layer.contents = (id) [UIImage imageNamed: @ "background.png" ]. CGImage;

Причина: каждый вид поддерживается классом CALayer. Согласно документации на CALayer:

contents
An object that provides the contents of the layer. Animatable.


@property(retain) id contents

Discussion
A layer can set this property to a CGImageRef to display the image as its contents. The default value is nil.

И да, это свойство анимируется. Это означает, что на этом уровне можно сделать приятные переходы на основе CoreAnimation. Примечание: будьте осторожны, если вы поддерживаете несколько ориентаций.

Ответ 3

Быстрое решение для этого...

let backgroundImageView = UIImageView(image: UIImage(named: "backgroundImage"))
backgroundImageView.frame = view.frame
backgroundImageView.contentMode = .ScaleAspectFill
view.addSubview(backgroundImageView)
view.sendSubviewToBack(backgroundImageView)

Ответ 4

Чтобы расширить код Jesse Naugher: UIView (или UIViewController, если на то пошло), не имеет встроенного способа использования изображения для фона. Что вам нужно сделать, так это использовать UIImageView, который является подклассом UIView специально для отображения изображений, и добавить его в обратную сторону иерархии представлений.

Ответ 5

Решение для Swift 3.0

self.view.backgroundColor = UIColor(patternImage: UIImage(named: "home02.png")!)