- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我从 this 得到了下面的代码所以问题。当我开始编辑时,我试图向上滑动文本字段(因为否则它们会被 iPhone 键盘覆盖)。但是,日志语句显示未调用 textFieldDidBeginEditing 方法。
我在 UIViewController 的两个不同子类中有以下代码。例如,在其中一个中,我有一个从 Storyboard连接到 UIViewController 的文本字段,如下所示
@property (strong, nonatomic) IBOutlet UITextField *mnemonicField;
我将文本字段移至 View 的顶部(即未被键盘覆盖),以便我可以对其进行编辑以尝试触发日志语句,但它不起作用。文本字段否则按预期工作,即我输入的数据被保存到 coreData 等。
你能解释一下我可能做错了什么吗?
- (void)textFieldDidBeginEditing:(UITextField *)textField
{
NSLog(@"The did begin edit method was called");
[self animateTextField: textField up: YES];
}
- (void)textFieldDidEndEditing:(UITextField *)textField
{
[self animateTextField: textField up: NO];
}
- (void) animateTextField: (UITextField*) textField up: (BOOL) up
{
const int movementDistance = 180; // 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
类中分配 UITextField
的委托(delegate)
:
在您的 viewcontroller.m 文件中,在 ViewDidLoad
方法中,执行以下操作:
self.mnemonicField.delegate=self;
在您的 viewcontroller.h 文件中,执行以下操作:
@interface YourViewController : ViewController<UITextFieldDelegate>
关于ios - textFieldDidBeginEditing : not getting called,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23611104/
我正在开发一个应用程序,我在其中为应用程序的每个功能创建了模块。我必须从一个模块 UI Controller 切换到另一个模块 UI Controller 。 我在模块中有 UIController,
我的头文件 MyClass.h @interface MyClass : UIViewController { } @property (retain, nonatomic) IBOutlet UIT
当我使用这个方法时 -(void)textFieldDidBeginEditing:(UITextField *)textField 它给我一个错误 使用未声明的标识符“textFieldDidBeg
我有一个应用程序,在显示键盘的情况下我必须向上滚动。为了获得键盘大小,我正在注册 UIKeyboardWillShowNotification 事件,如下所示: [[NSNotification
我有一个 UIView,它包含另一个名为 contentView 的 UIView 对象。在 contentView 中,我有几个 UITextField 对象。为了使当前编辑的 UITextFiel
我在静态单元格 tableView 上有一个名为 textField 的 UItextField。该字段包含货币金额 - 例如“$10,000.00”。 编辑该金额时,货币和千位分组符号有点碍事。因此
我有一个包含三个 View 的项目,它们都是多个文本字段,在点击时调用 UIPickerView。我有两个 View 工作得很好,但是当我开始第三个 View 时,我无法调用 textFieldDid
我从 this 得到了下面的代码所以问题。当我开始编辑时,我试图向上滑动文本字段(因为否则它们会被 iPhone 键盘覆盖)。但是,日志语句显示未调用 textFieldDidBeginEditing
我有一个简单的 UITableViewController,它有 6 行,每行都有一个 UITextField。我希望能够单击每一行并将键盘应用于每一行。一切正常,除了出于某种原因我必须在每一行上单击
textFieldDidBeginEditing 和 textFieldShouldBeginEditing 之间的确切区别是什么。我想知道我们在哪种情况下使用它们(我知道当我们在文本字段中输入任何内
我在我的应用程序中使用 -(void)textFieldDidBeginEditing:(UITextField *)sender 这个函数。当我选择文本字段时,不会调用此函数。这是代码... -(v
如何将方法 textFieldDidBeginEditing 和 textFieldDidEndEditing 与苹果默认的 TextField 结构一起使用。 最佳答案 TextField 具有 o
我有动态tableView .几个单元格有 textField . UITextField *textField = [[UITextField alloc] initWithFrame:CGRect
我有一个复杂的问题,我正在解决越来越多的问题 :-) 我有一个嵌入式表格 View 。如果表格更改为编辑模式并且应编辑屏幕底部的某些文本字段,则它们隐藏在键盘后面。 我现在子类化了 UITableVi
这是我的代码: 在.h文件中 @interface VTViewController : UIViewController 在.m文件中 - (void)viewDidLoad { [sup
[myTextField becomeFirstResponder]; [myTextField resignFirstResonder]; 当我这样做 -(BOOL)textFieldShouldR
我将 UITextField 放在 UITableViewCell 中,并希望突出显示 tableViewCell 并且未选择的 tableViewCell 变为原始颜色,如果用户在每个 UIText
您可以将此视为我之前帖子的后续问题。 我已经编写了一个逻辑,只要它隐藏在键盘后面,我就可以向上移动文本字段。截至目前,我正在考虑键盘将覆盖所有设备底部 40% 的屏幕,因此根据设备大小移动文本字段。这
使用 UITextFieldDelegate,我根据 3 个 UITextFields 是否包含信息来禁用我的 UIButton“btnSignup”。目前,它的工作正常减去 UIButton rea
我制作了一个 Collection View ,其中填充了文本字段。我已经让 textFieldDidBeginEditing 正常工作了。我已将单元格中的文本字段分配给索引路径中的项目作为委托(de
我是一名优秀的程序员,十分优秀!