当UIKeyboard被调用时,内存分配以及何时不释放UIKeyboard被隐藏.如果它是缓存它的框架,有什么方法可以清除它吗?这些代码是我用来创建UITextField以及如何隐藏的代码UIKeyboard:
#import <UIKit/UIKit.h>
@interface SignInTextField : UITextField
-(id)initWithIndexPath:(NSIndexPath*)indexPath;
@end
#import "SignInTextField.h"
@implementation SignInTextField
-(id)initWithIndexPath:(NSIndexPath*)indexPath{
self = [super init];
if (self) {
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
// iPad
self.frame = CGRectMake(110, 10, 600, 30);
} else {
self.frame = CGRectMake(110, 11, 150, 30);
}
self.tag = [indexPath row];
self.returnKeyType = UIReturnKeyDone;
self.autocapitalizationType = UITextAutocapitalizationTypeNone;
}
return self;
}
//SettingTextField
SignInTextField *textField = [[SignInTextField alloc]initWithIndexPath:indexPath];
textField.delegate = self;
#pragma mark - Text Field CallBack
-(void)textFieldDidBeginEditing:(UITextField *)textField{
activeField = textField;
}
- (void)textFieldDidEndEditing:(UITextField *)textField {
if(textField.tag == 0) temp_email = [NSString stringWithFormat:@"%@",textField.text];
if(textField.tag == 1) temp_password = [NSString stringWithFormat:@"%@",textField.text];
}
- (BOOL)textFieldShouldReturn:(UITextField *)textField {
[textField resignFirstResponder];
return YES;
}
Run Code Online (Sandbox Code Playgroud)

当您第一次打开键盘时,它将被iOS本机框架缓存.它由UIKit框架处理.
它不是内存泄漏.下次当需要显示键盘时,应用程序将使用缓存键盘.
如果内存要求很高,则本机框架将根据需要释放缓存的视图.仍然应用程序需要内存,框架会为此生成内存警告.
| 归档时间: |
|
| 查看次数: |
2044 次 |
| 最近记录: |