首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >切换视图后ImageView和NSString变量重置

切换视图后ImageView和NSString变量重置
EN

Stack Overflow用户
提问于 2012-08-25 22:27:06
回答 1查看 189关注 0票数 0

我正在设计一个iPhone程序,它可以在一个视图中按下一个“定制”圆角按钮,这个视图显示一个不同的视图(我在内置的故事板上使用模式连接来切换视图),从它可以自定义第一个视图上的背景。自定义屏幕(第二个屏幕)有几个按钮可用于选择使用以下代码的背景:

ViewController.h:

代码语言:javascript
运行
复制
@interface{
...
IBOutlet UIImageView *backgroundImageTest;

...

}

...

@property (strong,nonatomic) NSString *backgroundImageName;

@property (retain, nonatomic) IBOutlet UIImageView *backgroundImageTest;

...

ViewController.m:

代码语言:javascript
运行
复制
- (IBAction)setJungleBackground:(id)sender {

backgroundImageName=@"jungle.png";

backgroundImageTest.image=[UIImage imageNamed:@"jungle.png"];
}

- (IBAction)setArcticBackground:(id)sender {

backgroundImageName=@"arctic.png";

backgroundImageTest.image=[UIImage imageNamed:@"arctic.png"];
}

每个可能的背景。

也在ViewController.m中:

代码语言:javascript
运行
复制
- (void)viewDidLoad
{

if(!notFirstTime){

    notFirstTime=YES;

    ...

    backgroundImageName=@"white.png";

}

...

backgroundImageTest.image=[UIImage imageNamed:backgroundImageName];

...

[super viewDidLoad];

}

每次切换视图时,firstTime布尔值都会重置为NO,并且该背景仍然是默认背景(@"white.png")。如果我将@"white.png“替换为”jungle.png“,则背景可以工作,但不能切换到任何其他背景。

对于这两个视图,我使用一个ViewController。到目前为止,除了这个小问题之外,它似乎发挥了很大的作用。我应该使用多个ViewControllers吗?我不知道在何种情况下我应该这样做。

此外,我也不确定在变量的属性声明中是否应该使用retain或Also。

我对iPhone编程比较陌生,任何建议都会受到极大的赞赏。

谢谢,亚历克斯

EN

Stack Overflow用户

发布于 2012-08-25 22:33:09

viewDidLoad是在视图控制器实例化之后调用的--似乎您正在不断地重新创建视图控制器实例。避免这种情况,然后使用viewDidAppear。

票数 0
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12126135

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档