我有子類UITextField,所以我可以爲它創建一些自定義行爲。這裏是我的課:Objective C iPhone的子類化UITextField捕獲值更改
DataboundTextField.h
#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
#import "TestEntities.h"
@interface DataboundTextField : UITextField <UITextFieldDelegate> {
NSString *valueMember;
NSString *displayValueMember;
ODataObject *boundEntity;
}
@property (nonatomic, retain) NSString *valueMember;
@property (nonatomic, retain) NSString *displayValueMember;
@property (nonatomic, retain) ODataObject *boundEntity;
-(void)SetupDataBinding:(ODataObject*)oDataEntity ValueMember:(NSString*)valMemberID DisplayValueMember:(NSString*)disValMember;
@end
DataboundTextField.m
#import "DataboundTextField.h"
@implementation DataboundTextField
@synthesize valueMember;
@synthesize displayValueMember;
@synthesize boundEntity;
-(id) initWithCoder:(NSCoder *)aDecoder{
if ((self = [super initWithCoder:aDecoder]))
{
self.delegate = self;
}
return self;
}
-(void)SetupDataBinding:(ODataObject*)oDataEntity ValueMember:(NSString*)valMemberID DisplayValueMember:(NSString*)disValMember{
}
-(BOOL) textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string{
return YES;
}
@end
我該如何去了解重寫ValueChanged事件?我似乎無法抓住它,但我嘗試。我想要做的就是在視圖中隱藏這些子文本字段中的一個,並捕獲該事件並處理它。
請幫忙。
在此先感謝
取決於你需要用UITextField做什麼,你可能不需要子類。用UITextFieldDelegate方法可以做很多事情。 – 2010-12-16 01:25:54
我希望這個類可以在整個項目中重用,所以我不認爲使用委託就足夠了。 – IPadHackAndSlash 2010-12-16 01:37:48