我在tableView中使用自定义单元格和UITextField
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier] autorelease];
UITextField *txtField = [[UITextField alloc] initWithFrame:CGRectMake(0, 0, 280, 24)];
txtField.placeholder = @"<Enter Text>";
txtField.textAlignment = UITextAlignmentLeft;
txtField.clearButtonMode = UITextFieldViewModeAlways;
txtField.autocapitalizationType = UITextAutocapitalizationTypeNone;
txtField.autocorrectionType = UITextAutocorrectionTypeNo;
[cell.contentView addSubview:txtField];
[txtField release];
}
}
这很好用,UITextField覆盖了单元格。
当我使用3.2 sdk或在iPad上运行时,UITextField未正确对齐左侧,重叠单元格,我必须使用UITextField宽度270而不是280 UITextField * txtField = [[UITextField alloc] initWithFrame:CGRectMake(0,0,270,24)];
像素比似乎有问题。怎么解决这个问题?有没有办法确定设备的操作系统版本(3.1.2,3.1.3,3.2甚至4.0),还是可以用其他方式完成?
谢谢 TEO