Ios4 无法在iphone中将字符串值分配给字符串变量?

Ios4 无法在iphone中将字符串值分配给字符串变量?,ios4,uitextfield,Ios4,Uitextfield,在我的应用程序中,我获取一个UITextField值并对其进行修剪,然后将其分配给Appdelegate中声明的字符串变量。它分配给appdelegate变量并且工作正常,有时不分配给appdelegate变量。(此值在另一个视图中使用,因此在appdelegate中声明)。Plz帮助 NSString *txtTemp=[NSString stringWithFormat:@"%@",[txtName.text stringByTrimmingCharactersInSet:[NSChara

在我的应用程序中,我获取一个UITextField值并对其进行修剪,然后将其分配给Appdelegate中声明的字符串变量。它分配给appdelegate变量并且工作正常,有时不分配给appdelegate变量。(此值在另一个视图中使用,因此在appdelegate中声明)。Plz帮助

NSString *txtTemp=[NSString stringWithFormat:@"%@",[txtName.text  stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]]];
txtName.text=txtTemp;
[self appDelegate].customSearchQuery=[NSString stringWithFormat:@"%@",txtTemp];

NSLog(@"--appDelegate.customSearchQuery =%@",appDelegate.customSearchQuery);

这很可能是内存管理问题。 NSString创建一个自动释放的对象。如果您想在上述方法之外使用它,您必须保留它。最简单的事就是像你一样照顾你

@property (nonatomic, retain) NSString *customSearchQuery; 
在Appdelegate.h中。这应该能奏效

在appdelegate的dealloc方法中,您需要释放它,否则会泄漏NSString;根据上面的声明,您将添加

customSearchQuery = nil;

在执行上述操作之前,请确保
appDelegate
变量已初始化(
appDelegate=[[UIApplication sharedApplication]delegate]
)。是。。。我已经初始化了appDelegate。好的。。使用
NSLog
显示变量
appDelegate
。有时查看它是否显示
null