Клавиатура не исчезает - PullRequest
1 голос
/ 05 июня 2011

Я добавил uitextfield программно в ячейку uitableview, проблема в том, что когда я набираю текстовое поле и нажимаю кнопку «Готово» или перемещаюсь из текстового поля, клавиатура не исчезает.

Любое предложение, чтобы решить это?

@interface test_20110605ViewController : UIViewController <UITextFieldDelegate> {

    UITextField *PtienttextField ;
}

@property ( nonatomic , retain ) UITextField *PtienttextField ;

@end

at m file 

@implementation test_20110605ViewController

@synthesize PtienttextField ;


- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

    static NSString *CellIdentifier = @"Cell";

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:CellIdentifier] autorelease];

        if (indexPath.row == 0 && indexPath.section == 1 ) {


            //cell.textLabel.text = "Patient Name";



            UILabel *PatientLabel = [[UILabel alloc] initWithFrame:CGRectMake(10, 10, 120, 25)];
            PatientLabel.backgroundColor = [UIColor clearColor];
            PatientLabel.tag = 1;
            PatientLabel.text = @"Patient Name" ; 
            [cell.contentView addSubview:PatientLabel];

            PtienttextField = [[UITextField alloc]initWithFrame:CGRectMake(140, 10, 400, 30)];

            PtienttextField.clearsOnBeginEditing = YES;
            PtienttextField.textAlignment = UITextAlignmentRight;
            PtienttextField.returnKeyType = UIReturnKeyDone;
            PtienttextField.delegate = self;
            //PtienttextField.tag = 2 ; 
            [PtienttextField setBorderStyle:UITextBorderStyleBezel];
            [cell.contentView addSubview:PtienttextField];
        }
    }

    // Configure the cell.

    return cell;
}

- (BOOL)textFieldShouldReturn:(UITextField *)textField{


    return YES;
}

@end

Ответы [ 2 ]

3 голосов
/ 05 июня 2011

Я думаю, вам не хватает следующего в textFieldShouldReturn:

[textField resignFirstResponder];

тогда ваш return YES;

0 голосов
/ 15 августа 2013

попробуйте поставить NSNotification, когда появится клавиатура, и установите текстовое поле в качестве первого ответчика. Возможно, вы используете проблему из-за того, что текстовое поле не является первым респондентом в вашем случае.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...