在按下UIButton时,是否还要调用UITextField的 textFieldDidEndEditing ?
textFieldDidEndEditing中的当前流程功能可在用户按下" 返回"或" 完成"按钮,然后单击UIButton。为清楚起见,如果要在 textFieldDidEndEditing 中运行 ABC功能,用户必须按" 返回"或" 完成"键盘按钮,然后单击UIButton。
我想要的是我想在textFieldDidEndEditing中运行功能可以在用户按UIButton时运行。
答案 0 :(得分:6)
在按钮处理程序方法中,调用:
[self.view endEditing:YES];
这会强制键盘消失,无论当前文本字段的焦点是什么,焦点都将重新响应第一响应者,并且将为其调用textFieldDidEndEditing:
方法。
以上假设按钮处理程序位于视图控制器类中。
由于您正在处理自定义单元格并且按钮位于自定义单元格中,因此只需执行以下操作:
[self endEditing:YES];
其中self
是自定义单元格。这将重新签名单元格中的任何文本字段。
答案 1 :(得分:0)
您可以使用textfield AudioStreamBasicDescription asbd = {0};
asbd.mSampleRate = self.currentAudioSampleRate;
asbd.mFormatID = kAudioFormatLinearPCM;
asbd.mFormatFlags = kLinearPCMFormatFlagIsSignedInteger;
asbd.mChannelsPerFrame = 2;
asbd.mBytesPerFrame = bytesPerSample * 2;
asbd.mBitsPerChannel = 8 * bytesPerSample;
asbd.mFramesPerPacket = 1;
asbd.mBytesPerPacket = bytesPerSample * 2;
通知
UIKeyboardWillHideNotification
单击按钮时,只需按
重新排列文本字段- (void)viewDidLoad
{
[super viewDidLoad];
// register for keyboard dismiss notification
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillHide:) name:UIKeyboardWillHideNotification object:nil];
}
- (void)keyboardWillHide:(NSNotification *)notification
{
// This function will be called whenever the keyboard hides. So you can implement your textFieldDidEndEditing code here.
}