我是一位有用的助手,可以为您进行文本翻译。
我编写了一个简单的ios5应用程序(包括垃圾收集器),其中包含一个单视图和一个UITextField
。我需要分析这个UITextField
中的输入文本。以下是我的代码。
头文件:
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController<UITextFieldDelegate>
{
IBOutlet UITextField *myTextField;
}
@property (nonatomic, retain) IBOutlet UITextField *myTextField;
-(IBAction)editingChanged:(UITextField *)sender;
editingChanged:
通过发送事件“editing changed”进行跟踪,因此每当用户更改UITextField
中的内容时,该方法都会被调用。
实现文件的一部分:
#pragma mark - textField
-(NSString *)stringWithoutAbc:(NSString *)sourceString
{
NSString *resultString=[sourceString stringByReplacingOccurrencesOfString:@"abc:" withString:@""];
if (![resultString isEqualToString:sourceString])
{
NSLog(@" sourceString: %@", sourceString);
NSLog(@" resultString: %@", resultString);
};
return resultString;
}
-(IBAction)editingChanged:(UITextField *)sender
{
NSLog(@"editing Changed. text: %@", sender.text);
//removing "abc:" from string in text field
NSString *str=[self stringWithoutAbc:sender.text];
//if something was removed - changing text in text field
if (![str isEqualToString:sender.text])
{
sender.text=str;
};
}
每当用户在
UITextField
中更改文本时,我们使用标准的NSString
方法从该文本中删除“abc:”字符串。问题是:应用程序不稳定。有时在删除“abc:”时会崩溃。 请帮我解决这个问题。
UITextField
中输入的文本开头(或结尾)被删除2-3次时,会导致程序崩溃。而且,当我们在已经输入的文本中间输入"abc:"时,也会出现这种情况。 - Oleg