Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 在UITableView页脚或页眉中添加UIButton_Iphone_Uitableview - Fatal编程技术网

Iphone 在UITableView页脚或页眉中添加UIButton

Iphone 在UITableView页脚或页眉中添加UIButton,iphone,uitableview,Iphone,Uitableview,我在UITableView标题中添加了一个带有按钮的视图。我已经正确设置了高度,当键盘未显示时,按钮实际上可以正常工作。当按下某个文本字段时,单元格中的UITextField键盘将显示,并且我已将表格视图框设置为较小,因此可以单击单元格,但问题是按钮-当按钮与表格视图中的部分相交时,按钮未完全显示,按钮不起作用,当按钮完全显示时,按钮起作用 我试过将按钮放在滚动视图中,而不是放在页脚或tableview页眉中,效果非常好。这是某种UITableView头错误吗?可以修复吗?在代码中添加以下内容:

我在UITableView标题中添加了一个带有按钮的视图。我已经正确设置了高度,当键盘未显示时,按钮实际上可以正常工作。当按下某个文本字段时,单元格中的UITextField键盘将显示,并且我已将表格视图框设置为较小,因此可以单击单元格,但问题是按钮-当按钮与表格视图中的部分相交时,按钮未完全显示,按钮不起作用,当按钮完全显示时,按钮起作用


我试过将按钮放在滚动视图中,而不是放在页脚或tableview页眉中,效果非常好。这是某种UITableView头错误吗?可以修复吗?

在代码中添加以下内容:

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

      if(textField.tag != [[[yourTable indexPathsForVisibleRows] objectAtIndex:0]row])
          [self animateTextField: textField up: NO];
    return YES;
}

- (void)textFieldDidBeginEditing:(UITextField *)textField
{

    if(textField.tag != [[[yourTable indexPathsForVisibleRows] objectAtIndex:0]row])
    [self animateTextField: textField up: YES];
}

- (void) animateTextField: (UITextField*) textField up: (BOOL) up
{
    const int movementDistance = 300; // tweak as needed
    const float movementDuration = 0.3f; // tweak as needed

    int movement = (up ? -movementDistance : movementDistance);

    [UIView beginAnimations: @"anim" context: nil];
    [UIView setAnimationBeginsFromCurrentState: YES];
    [UIView setAnimationDuration: movementDuration];
    self.view.frame = CGRectOffset(self.view.frame, 0, movement);
    [UIView commitAnimations];
}

这是什么代码?我应该把它放在哪里?您能解释为什么会发生这种情况吗?此代码用于在按下键盘文本字段并显示键盘时调整视图框。将其放置在有问题的viewController中。