gpt4 book ai didi

iphone - 如何添加清除按钮 UITextfield?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:58:55 25 4
gpt4 key购买 nike

<分区>

我想在 UITextfield 中添加一个清除按钮,但它没有显示。

这是 UITextfield 的代码:

  @implementation databaseEnterDataViewController

@synthesize customer = customer_ ;
@synthesize type = type_ ;
@synthesize code1 = code1_ ;
@synthesize code2 = code2_ ;
@synthesize background,
changeType,
codeOne,
codeTwo,
customers,
suspendDisplayInfo,
tf;


#pragma mark -
#pragma mark Initialization

#pragma mark -
#pragma mark View lifecycle

- (void)viewDidLoad {
[super viewDidLoad];

self.customer = @"" ;
self.type = @"" ;
self.code1 = @"" ;
self.code2 = @"" ;

self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc]initWithTitle:@"Save" style:UIBarButtonSystemItemCancel target:self action:nil];
self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemCancel target:self action:nil];
self.navigationItem.title = @"Enter Data";

code1Field_.clearButtonMode = UITextFieldViewModeWhileEditing;
code2Field_.clearButtonMode = UITextFieldViewModeUnlessEditing;
customerField_.clearButtonMode = UITextFieldViewModeAlways;


[self openDB];
[self createTable:@"barcodeScan" withField1:@"key" withField2:@"scanDate" withField3:@"theCustomer" withField4:@"type" withField5:@"theCode1" withField6:@"theCode2" withField7:@"discription" withField8:@"articleNr" withField9:@"batchNr" withField10:@"serialNr" withField11:@"expDate"];

self.suspendDisplayInfo=false;
NSLog(@"%@",typeLabel_.text);









#ifdef LOG_FILE
NSFileManager *fileManger = [NSFileManager defaultManager];
if ([fileManger fileExistsAtPath:[self getLogFile]])
{
[debug appendString:[[NSString alloc] initWithContentsOfFile:[self getLogFile]]];
[debugText setText:debug];
}
#endif

dtdev=[Linea sharedDevice];
[dtdev addDelegate:self];
[dtdev connect];




types = [[NSMutableArray alloc] init];
[types addObject:@"Select barcode type"];
[types addObject:@"Intervascular"];
[types addObject:@"CID"];
[types addObject:@"MAQUET"];


[self pickerview];

tf.clearButtonMode =UITextFieldViewModeAlways;


}




- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
// Return the number of sections.
return 1;
}


- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
// Return the number of rows in the section.
return 4;
}


// Customize the appearance of table view cells.
- (UITableViewCell *)tableView:(UITableView *)tableView
cellForRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:nil];

// Make cell unselectable
cell.selectionStyle = UITableViewCellSelectionStyleNone;

tf = nil;
tf.clearButtonMode =UITextFieldViewModeAlways;
changeType = [UIButton buttonWithType:UIButtonTypeRoundedRect];
changeType.frame = CGRectMake(cell.frame.origin.x + 220, cell.frame.origin.y + 7, 80, 30);
[changeType setTitle:@"Change type" forState:UIControlStateNormal];
changeType.backgroundColor= [UIColor clearColor];
[changeType.titleLabel setFont:[UIFont systemFontOfSize:14]];
[changeType addTarget:self action:@selector(clickeButton:) forControlEvents:UIControlEventTouchDown];


switch ( indexPath.row ) {
case 0: {
cell.textLabel.text = @"Customer:" ;
tf = customerField_ = [self makeTextField:self.customer placeholder:@"Customer name"];
[cell addSubview:customerField_];


break ;
}
case 1: {
cell.textLabel.text = @"Type:" ;
tf = typeLabel_ = [self makeTextField:self.type placeholder:@"Type code"];
[cell addSubview:typeLabel_];
[cell addSubview:changeType];

break ;
}
case 2: {
cell.textLabel.text = @"Code 1:" ;
tf = code1Field_ = [self makeTextField:self.code1 placeholder:@"Code 1"];
[cell addSubview:code1Field_];
break ;
}
case 3: {
cell.textLabel.text = @"Code 2:" ;
tf = code2Field_ = [self makeTextField:self.code2 placeholder:@"code 2"];
[cell addSubview:code2Field_];
break ;
}
}

// Textfield dimensions
tf.frame = CGRectMake(120, 12, 170, 30);

// Workaround to dismiss keyboard when Done/Return is tapped
[tf addTarget:self action:@selector(textFieldFinished:) forControlEvents:UIControlEventEditingDidEndOnExit];

// We want to handle textFieldDidEndEditing
tf.delegate = self ;

return cell;
}





-(UITextField*) makeTextField: (NSString*)text
placeholder: (NSString*)placeholder {
UITextField*tf = [[UITextField alloc] init];
tf.placeholder = placeholder ;
tf.text = text ;
tf.autocorrectionType = UITextAutocorrectionTypeNo ;
tf.autocapitalizationType = UITextAutocapitalizationTypeNone;
tf.adjustsFontSizeToFitWidth = YES;
tf.textColor = [UIColor colorWithRed:56.0f/255.0f green:84.0f/255.0f blue:135.0f/255.0f alpha:1.0f];
return tf ;
}

// Workaround to hide keyboard when Done is tapped
- (IBAction)textFieldFinished:(id)sender {
// [sender resignFirstResponder];
}

// Textfield value changed, store the new value.
- (void)textFieldDidEndEditing:(UITextField *)textField {
if ( textField == customerField_ ) {
self.customer = textField.text ;
}
else if ( textField == typeLabel_ ) {
self.type = textField.text ;
}
else if ( textField == code1Field_ ) {
self.code1 = textField.text ;
}
else if ( textField == code2Field_ ) {
self.code2 = textField.text ;
}
}

在 iphone 上它看起来像这样:

enter image description here

当我像这样添加清除按钮时

customerField_.clearButtonMode = UITextFieldViewModeWhileEditing;

按钮没有显示。

我应该怎么做才能让它可见?

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