UITextField Авторазмер в UITableViewCell - PullRequest
0 голосов
/ 22 июля 2011

У меня есть UITextField внутри ячейки UITableView. Когда я поворачиваю устройство, текстовое поле остается той же ширины, что и в портретном режиме. Я знаю, что мне нужно использовать авторазмер, чтобы заполнить поле, когда я нахожусь в ландшафте, но я не уверен, как это сделать, поскольку я пытался и потерпел неудачу.

Как бы я это сделал?

cell.textLabel.text = @"Email";
UITextField *field2 = [[UITextField alloc] initWithFrame:CGRectMake(110, 10, width, 30)];
field2.adjustsFontSizeToFitWidth = YES;
field2.textColor = [UIColor blackColor];
field2.keyboardType = UIKeyboardTypeEmailAddress;
field2.returnKeyType = UIReturnKeyNext;
field2.placeholder = @"Required";
field2.tag = 3;
field2.delegate = self;
field2.autoresizingMask =  UIViewAutoresizingFlexibleWidth;
field2.backgroundColor = [UIColor blueColor];
// Finish building cell
field2.autocorrectionType = UITextAutocorrectionTypeNo;
field2.autocapitalizationType = UITextAutocapitalizationTypeNone;
field2.textAlignment = UITextAlignmentLeft;
[field2 addTarget:self action:@selector(updateFields:) forControlEvents:UIControlEventEditingChanged];
field2.text = email;
self.emailField = field2;
[cell addSubview:field2];
[field2 release];

1 Ответ

2 голосов
/ 22 июля 2011
  1. Убедитесь, что для tableView установлено автоматическое изменение размера, для subivew установлено значение YES.
  2. Убедитесь, что вы возвращаете ДА для всех поддерживаемых поворотов.
    • (void) willRotateToInterfaceOrientation: (UIInterfaceOrientation) toInterfaceOrientation длительность: (NSTimeInterval) продолжительность { }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...