2012-06-21 2 views
0

Я просмотрел изображение в applicationDidFinishLaunching, как показано ниже.Изменение всего фона приложения

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{ 
     self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; 
     UIImageView* imageBg = [[UIImageView alloc]initWithFrame:CGRectMake(0, 20, 320, 460)]; 
     imageBg.image = [UIImage imageNamed:@"AppBG.png"]; 
     [self.window addSubview:imageBg]; 
     [self.window sendSubviewToBack:imageBg]; 
} 

Сейчас в RootViewController У меня есть одна кнопка

Моя потребность в том, что на нажатием кнопки в RootViewController Я хочу изменить изображение из AppBG.png в AppBG1.png

ответ

2

Сделайте свой UIImageView, imageBg собственности, синтезируйте его.

Затем используйте следующий код на нажатие кнопки:

MyAppdelegate *appdelegate = (MyAppdelegate *)[[UIApplication sharedApplication] delegate]; 
appdelegate.imageBg.image = [UIImage imageNamed:@"AppBG1.png"]; 
2

Легко! Просто сделайте imageBg местным свойством и экземпляром в AppDelegate. Не забудьте синтезировать свои свойства. И в RootViewController класс поместить этот код в кнопку IBAction, который подключен к UIButton:

- (IBAction)buttonWasPressed { 
AppDelegate *delegate = [[AppDelegate alloc] init]; 
delegate.imageBg.image = [UIImage imageNamed: @"AppBG1.png"]; 
// Don't forget memory management! 
[delegate release]; 
} 

Другой метод, который вы могли бы сделать это добавить метод в приложение делегата:

- (void)changeImage { 

self.imageBg.image = [UIImage imageNamed: @"AppBG1.png"]; 
} 

И в RootViewController позвоните по этому методу:

- (IBAction)buttonWasPressed { 
AppDelegate *delegate = [[AppDelegate alloc] init]; 
[delegate changeImage]; 
// Don't forget memory management! 
[delegate release]; 
} 

Просто простая цель-C!

3
//add a tag to your imageview 
imageBg.tag = 1001; 

//fetch the imageview from window like this 
UIImageView *imgView = [self.window viewWithTag:1001]; 

//use this imageView to replace existing image like this 
imageView.image = [UIImage imageNamed:@"newimg.png"]; 
Смежные вопросы