Установите фоновое изображение для пользовательского UIView
Я разрабатываю приложение для рисования с использованием OpenGL.
Я использую "CUSTOM UIView" для рисования на экране и другого UIImageView для установки фонового изображения на него. Посмотрите на скриншот, чтобы понять это ясно. Моя проблема в том, что я не могу установить фоновое изображение на любом из видов. Я должен использовать разные текстуры в качестве чертежной доски, на которой у меня есть Paint. Может ли кто-нибудь предположить, что неправильно в этом подходе?
Imagelink http://img835.imageshack.us/img835/9794/screenshot20110802at345.png
Я использовал этот код для пользовательского UIView, но не добился успеха.. но он показывает только белый фон по умолчанию.
- (id)initWithCoder:(NSCoder*)coder
{
UIColor *background = [[UIColor alloc] initWithPatternImage:[UIImage imageNamed:@"Rough_White_Paper_with_tape.png"]];
self.backgroundColor = background;
[background release];
}
Ответы
Ответ 1
NSURL *imgUrl=[[NSURL alloc] initWithString:@"http://img835.imageshack.us/img835/9794/screenshot20110802at345.png"];
NSData *imgData = [NSData dataWithContentsOfURL:imgUrl];
UIImage *img = [UIImage imageWithData:imgData];
imageView = [[UIImageView alloc] initWithImage:img];
[self addSubview:imageView ];
[self sendSubviewToBack:imageView ];
[imageView release]; [imgUrl release];
Ответ 2
используйте этот
self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"Default"]];
Ответ 3
- (id)initWithCoder:(NSCoder*)coder
{
self = [super initWithCoder:coder];
if (self) {
UIColor *background = [[UIColor alloc] initWithPatternImage:[UIImage imageNamed:@"Rough_White_Paper_with_tape.png"]];
self.backgroundColor = background;
[background release];
}
return self;
}
Вам просто нужно было добавить возвращение self; Он отлично работает для меня...
Ответ 4
Попробуйте следующее:
UIImageView *background = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"Rough_White_Paper_with_tape.png"]];
[self addSubview:background];
[self sendSubviewToBack:background];
[background release];
Ответ 5
Попробуйте следующее:
UIImageView *myImageView = [[UIImageView alloc] initWithImage :
[UIImage imageNamed :@"abc.png"]];
UIView *myUIView = [[UIImageView alloc] initWithFrame :CGRectMake(10,10,250,250)];
myUIView = myImageView;
Ответ 6
установить фон с UIImageView не изящно.
должен использовать следующий API:
self.view.backgroundColor = [[UIColor alloc] initWithPatternImage:[UIImage imageNamed:@"whiteBackground.png"]];
Ответ 7
это находится в быстрой 2
var background = UIImageView(image: UIImage(named: "image.jpg"))
self.addSubview(background)
self.sendSubviewToBack(background)
Ответ 8
Используйте этот
self.view.backgroundColor=[[UIColor alloc] initWithPatternImage:[UIImage imageNamed:@"image.png"]];