OC 中的 Text Fields函数

首页 / iOS入门教程 / OC 中的 Text Fields函数

Text Fields是一个UI元素,使应用程序可以获取用户输入。

UITextfield如下所示。

iOS Text field

Text Fields - 属性

  • Placeholder
  • Normal text
  • Auto correction type
  • Key board type
  • Return key type
  • Clear button mode
  • Alignment
  • Delegate

Text Fields - 更新属性

您可以在实用程序区域(窗口的右侧)的属性检查器中的xib中更改文本字段属性。

iOS Tutorial

Text Fields - 委托

无涯教程可以通过右键单击UIElement并在接口构建器中设置委托,如下所示,将其连接到文件所有者。

iOS Tutorial

Text Fields - 代理步骤

步骤1 - 设置代理,如上图所示。

步骤2 - 添加类响应的委托。

步骤3 - 实现textField委托,重要的文本字段委托如下-

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

步骤4 - 顾名思义,一旦无涯教程分别开始编辑文本字段和结束编辑,就会调用上述两个委托。

步骤5 - 对于其他代表,请参考UITextDelegate协议参考。

Text Fields - 示例代码

步骤1 - 无涯教程将使用为UI元素创建的示例应用程序。

步骤2 - 无涯教程的ViewController类将采用 UITextFieldDelegate 并且无涯教程的 ViewController.h 文件更新如下-

#import <UIKit/UIKit.h>

//您可以注意到下面添加了 UITextFieldDelegate
@interface ViewController : UIViewController<UITextFieldDelegate>

@end

步骤3 - 然后,无涯教程在ViewController.m文件中添加方法 addTextField 。

步骤4 - 然后,无涯教程在viewDidLoad方法中调用此方法。

无涯教程网

步骤5 - 如下更新 ViewController.m 中的 viewDidLoad -

链接:https://www.learnfk.comhttps://www.learnfk.com/ios/ios-ui-elements-text-field.html

来源:LearnFk无涯教程网

#import "ViewController.h"
@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
   [super viewDidLoad];
   //创建我们的文本字段的自定义方法称为
   
   [self addTextField];
   //Do any additional setup after loading the view, typically from a nib.
}

- (void)didReceiveMemoryWarning {
   [super didReceiveMemoryWarning];
   //处置任何可以重新创建的资源。
}

-(void)addTextField {
   //这分配了一个标签
   UILabel *prefixLabel = [[UILabel alloc]initWithFrame:CGRectZero];
   
   //这将设置标签文本
   prefixLabel.text =@"## ";
   
   //这会设置标签的字体
   [prefixLabel setFont:[UIFont boldSystemFontOfSize:14]];
   
   //这使框架适合文本的大小
   [prefixLabel sizeToFit];
	
   //这将分配文本字段并设置其框架
   UITextField *textField = [[UITextField  alloc] initWithFrame:
   CGRectMake(20 50 280 30)];
   
   //这将设置文本字段的边框样式
   textField.borderStyle = UITextBorderStyleRoundedRect;
   textField.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter;
   [textField setFont:[UIFont boldSystemFontOfSize:12]];
   
   //未键入文本时显示占位符文本
   textField.placeholder = @"Simple Text field";
   
   //前缀标签设置为左视图,然后文本开始
   textField.leftView = prefixLabel;
  
   //设置左边prefixLabel什么时候显示
   textField.leftViewMode = UITextFieldViewModeAlways;
  
   //将 textField 添加到视图中。
   [self.view addSubview:textField];
  
   //将委托设置为当前类
   textField.delegate = self;
}

//标记用于在 Xcode 中轻松访问代码
#pragma mark - TextField Delegates

//一旦我们在 textField 内单击,就会调用此方法
-(void)textFieldDidBeginEditing:(UITextField *)textField {
   NSLog(@"Text field did begin editing");
}

//一旦我们完成编辑,就会调用这个方法
-(void)textFieldDidEndEditing:(UITextField *)textField {
   NSLog(@"Text field ended editing");
}

//此方法启用或禁用返回键的处理
-(BOOL) textFieldShouldReturn:(UITextField *)textField {
   [textField resignFirstResponder];
   return YES;
}

- (void)viewDidUnload {
   label = nil;
   [super viewDidUnload];
}
@end

步骤6 - 运行应用程序时,将得到以下输出。

iOS Tutorial

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

白话法律42讲 -〔周甲徳〕

Java并发编程实战 -〔王宝令〕

ZooKeeper实战与源码剖析 -〔么敬国〕

高并发系统设计40问 -〔唐扬〕

雷蓓蓓的项目管理实战课 -〔雷蓓蓓〕

如何读懂一首诗 -〔王天博〕

AI绘画核心技术与实战 -〔南柯〕

结构会议力 -〔李忠秋〕

手把手带你写一个 MiniTomcat -〔郭屹〕

好记忆不如烂笔头。留下您的足迹吧 :)