这是我的问题here
的扩展以下是该方案:
我有三个选项卡,其中有一个开关。当我触摸开关时,标签会更新(开或关),灯泡的图像会从一个jpg变为另一个。所以我正在使用UIImageView来改变UIImage。
#import <UIKit/UIKit.h>
@interface FirstViewController : UIViewController {
UISwitch *switch1;
UILabel *status1;
}
@property (nonatomic,retain) IBOutlet UISwitch *switch1;
@property (nonatomic,retain) IBOutlet UILabel *status1;
- (IBAction) switch1Change;
@end
,实施是
#import "FirstViewController.h"
@implementation FirstViewController
@synthesize switch1;
@synthesize status1;
- (IBAction) switch1Change
{
if (switch1.on) {
status1.text = @"ON";
...
}
else {
status1.text = @"OFF";
...
}
}
我无法理解何时释放对象。我尝试在 - (void)dealloc {}方法中给出[switch1 release]。但是当我切换标签时,应用程序崩溃了。怎么做?
答案 0 :(得分:0)
[switch1 release]
似乎是正确的,你得到的崩溃是什么?它可能与此无关。
如果你设置一个断点,你可能会发现标签没有被取消分配;一旦被标签栏加载,它就会保持它们。此外,所有选项卡的视图控制器都在开始时加载。