如何使用文本框和按钮创建UITableViewCell。我尝试使用此代码但按钮是不可见的,而文本框则不是。
cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifierWithTextBox];
if (cell == nil)
{
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifierWithTextBox] autorelease];
cell.accessoryType = UITableViewCellAccessoryNone;
CGRect textRect = CGRectMake(10, 20, 500, 31);
UITextField *myfield = [[UITextField alloc]initWithFrame:textRect];
myfield.borderStyle = UITextBorderStyleRoundedRect;
myfield.font = [UIFont systemFontOfSize:22.0];
myfield.adjustsFontSizeToFitWidth = YES;
myfield.minimumFontSize = 2.0;
myfield.clearButtonMode = UITextFieldViewModeWhileEditing;
myfield.keyboardType = UIKeyboardTypeDefault;
myfield.autocorrectionType= UITextAutocorrectionTypeNo;
myfield.autocapitalizationType=UITextAutocapitalizationTypeNone;
myfield.returnKeyType=UIReturnKeyDone;
UIButton *doneButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
doneButton.frame = CGRectMake(520, 10, 30, 30); // position in the parent view and set the size of the button
[doneButton setTitle:@"Registry now" forState:UIControlStateNormal];
// add targets and actions
[doneButton addTarget:self action:@selector(buttonClicked:) forControlEvents:UIControlEventTouchUpInside];
// add to a view
[cell.contentView addSubview: myfield];
[cell.contentView addSubview: doneButton];
[doneButton release];
[myfield release];
}
答案 0 :(得分:1)
删除此行:
[doneButton release];
您正在使用buttonWithType
创建按钮,该按钮将返回自动释放的对象。
答案 1 :(得分:0)
doneButton.frame = CGRectMake(520,10, 30,30);
此代码中出现问题。 iPhone在纵向模式下有320宽度,在横向模式下有480。如果设置x = 520,则无法看到它。
答案 2 :(得分:0)
执行以下操作。
doneButton.frame = CGRectMake(520,10,30,30);
问题在于以上几行。如果你在iPhone应用程序中使用它,那么它的宽度只有320像素。如果你在iPad上使用它很好。
在上面再做一件事。请为您的按钮添加背景颜色。
[doneButton setBackgroundColor:[UIColor blackColor]];