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にボタンが1つあります

RootViewControllerのボタンを押すと、画像をAppBG.pngからAppBG1.pngに変更する必要があります。

4

3 に答える 3

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"];
于 2012-06-21T12:53:31.390 に答える
2

簡単!imageBgAppDelegateでローカルプロパティとインスタンスを作成するだけです。プロパティを合成することを忘れないでください。そして、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];
}

単純なObjective-C!

于 2012-06-21T12:53:07.357 に答える
2

あなたUIImageViewの、imageBgプロパティを作成し、それを合成します。

次に、ボタンクリックで次のコードを使用します。

MyAppdelegate *appdelegate = (MyAppdelegate *)[[UIApplication sharedApplication] delegate];
appdelegate.imageBg.image = [UIImage imageNamed:@"AppBG1.png"];
于 2012-06-21T12:53:30.413 に答える