3

individualPercUpdatedで呼び出されUIControlEventEditingDidEnd、で呼び出さcheckInitialValueUIControlEventEditingDidBeginます。if(!([initialValue isEqualToString:textField.text]))Exec Bad Accessに警告を出すことにより、オンラインでプログラムがクラッシュし ます

- (void)viewDidLoad
{
    [super viewDidLoad];
    initialValue=[[NSString alloc] init];
}

-(void) individualPercUpdated:(UITextField *)textField{

    if(initialValue!=nil){
        if(!([initialValue isEqualToString:textField.text])){
            initialValue=textField.text;
            NSLog(@"%@",textField.text);
        }
    }

    else{
        NSLog(@"%@",textField.text);
    }
}

-(void) checkInitialValue:(UITextField *)textField{
        initialValue=textField.text;
    }

}
4

1 に答える 1

8

インスタンス変数を使用するすべての場所をプロパティに置き換えてアクセスします。これにより、メモリ管理に問題は発生しません。

@property (nonatomic, copy) NSString *initialValue;
...
@synthesize initialValue = _initialValue;
....
//Access with:
self.initialValue = @"something";
于 2012-07-05T06:46:47.647 に答える