NSURL *pathToBGImage = [[NSURL alloc] initWithString:[[NSBundle mainBundle] pathForResource:@"NoiseBGMainView" ofType:@"jpg"]];
Это неправильно. -[NSURL initWithString:]
принимает строковую версию URL, например http://apple.com/,, а не путь.
Поскольку вы не передали URL-адрес, URL-адрес будет относительным, но для относительного URL-адреса нужна база. URL является допустимым объектом, но никуда не ведет. Это, в свою очередь, заставляет initWithContentsOfURL:
возвращать nil
(потому что вы пытались загрузить изображение с относительного URL без основы). Затем вы пытаетесь заставить изображение рисовать, но у вас нет изображения, поэтому ничего не происходит.
Вы хотите initFileURLWithPath:
. (Или метод класса fileURLWithPath:
, с помощью которого вам не нужно будет публиковать URL позже.)