First of all, this is wrong

-(void)setBarcode:(NSString *)strBarcode
{
    self.barcode = strBarcode;
}


self.barcode = strBarcode; itself calls the setter.

depending on your ios version you shud write:

//for ARC environment
-(void)setBarcode:(NSString *)strBarcode
{
    _barcode = strBarcode;
}
//since default association in ARC is strong


before this do @synthesize barcode = _barcode;

//and for non-ARC environment, since your property is retain type
-(void)setBarcode:(NSString *)strBarcode
{
    if (_barcode != barcode) {
        [_barcode release];
        _barcode = [barcode retain];
    }
}


And you will be OK.

Setting text of UITextField from caller view
Do US customs check external hard disk? I am worried because I am going to carry data like softwares, ebooks and other things which are illegal according to US laws.
