【问题标题】:UITableViewCell cell is the keyboard coverUITableViewCell 单元格是键盘盖
【发布时间】:2014-04-02 15:48:05
【问题描述】:

[textField becomeFirstResponder] 被调用时,单元格被键盘覆盖,当[textField becomeFirstResponder] 被调用时,我想要在键盘上方的单元格位置。我该怎么做?

类似iphone短信功能!

【问题讨论】:

标签: ios uitableview uikeyboard


【解决方案1】:

您可以使用以下代码通过更改表格视图“Y”坐标来显示表格视图底部的文本字段

        #pragma mark - textfield delegate

        - (void) textFieldDidBeginEditing:(UITextField *)sender {
                   activeTextField = sender;

                   if ([sender isEqual:TextField1]) {
                      [self setViewMovedForViewIndex:1];
                   }
                   else if ([sender isEqual:TextView2])
                   {
                      [self setViewMovedForViewIndex:2];
                   }

        }

      - (BOOL)textFieldShouldReturn:(UITextField *)textField 
        {
                 [textField resignFirstResponder];
                 [self setViewMovedForViewIndex:0];
                 return YES;
        }

    - (void)setViewMovedForViewIndex:(int)index {
        [UIView beginAnimations:nil context:NULL];
        [UIView setAnimationDuration:0.5]; // if you want to slide up the view

        CGRect rect = self.table.frame; 

        switch (index) {
            case 0:
                rect.origin.y = 0;
                break;
            case 1:
                rect.origin.y = 0;
                break;
            case 2:
                rect.origin.y = -160;
                break;
            default:
                break;
        }

        self.table.frame = rect;

        [UIView commitAnimations];
    }

【讨论】:

    【解决方案2】:

    您似乎正在寻找KeyboardAccessory 视图。你可以做到这一点。看this tutorial。我会帮你的。并尝试研究它。

    Apple 为此提供了a sample

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-22
      • 1970-01-01
      • 1970-01-01
      • 2019-05-30
      • 1970-01-01
      • 1970-01-01
      • 2016-08-31
      相关资源
      最近更新 更多