UITextField
単一のビューを持ち、入力テキストを分析する必要がある単純な ios5 アプリケーション (ガベージ コレクターを含む) を作成しました。これUITextField
が私のコードです。ヘッダファイル:
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController<UITextFieldDelegate>
{
IBOutlet UITextField *myTextField;
}
@property (nonatomic, retain) IBOutlet UITextField *myTextField;
-(IBAction)editingChanged:(UITextField *)sender;
editingChanged:
変更された送信イベント編集で追跡されるため、ユーザーが私の何かを変更するたびにこのメソッドが呼び出されます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
標準的な方法を使用して、このテキストから「abc:」文字列を削除しますNSString
。
問題は、アプリケーションが不安定であることです。「abc:」が削除されるとクラッシュすることがあります。お願い助けて。この問題を解決するには?