gpt4 book ai didi

ios - 如何编写自定义 UItextField 类

转载 作者:可可西里 更新时间:2023-11-01 04:23:46 27 4
gpt4 key购买 nike

在我的应用程序中,我需要使用很多文本字段,我真的不希望每个 viewcontroller 类都包含文本字段的委托(delegate),这可能会很困惑,我只想创建一个通用类来处理文本字段的委托(delegate)并返回给我一个文本字段,我可以在其中将其添加为我需要的 subview 。我想把它作为一个库,并在需要文本字段时调用该类例如

CustomTexTField *textField = [[CustomTextField alloc] initWithFrame:Frame];
// returns a textField whose delegate will be set to CustomTextField //
// all i should do is just adding it as a subView //
[self.view addSubView:textField];

这可能吗??。提前致谢!!

最佳答案

正如 Midhun 回答的那样,您需要创建一个自定义 TextField 类并在该类中设置委托(delegate)。像这样

.h 文件

@interface CustomTextField : UITextField<UITextFieldDelegate>
@end

.m文件

@implementation CustomTextField
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
// Initialization code
self.delegate = self;
}
return self;
}
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField{
return YES;
}
- (void)textFieldDidBeginEditing:(UITextField *)textField{
}
- (BOOL)textFieldShouldEndEditing:(UITextField *)textField{
return YES;
}
- (void)textFieldDidEndEditing:(UITextField *)textField{
}
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string{
return YES;
}
- (BOOL)textFieldShouldClear:(UITextField *)textField{
return YES;
}
- (BOOL)textFieldShouldReturn:(UITextField *)textField{
return YES;
}
@end

关于ios - 如何编写自定义 UItextField 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17562690/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com