广

IOS开发

  • IOS开发
  • android开发
  • PHP编程
  • JavaScript
  • ASP.NET
  • ASP编程
  • JSP编程
  • Java编程
  • 易语言
  • Ruby编程
  • Perl编程
  • AJAX
  • 正则表达式
  • C语言
  • 编程开发

    iOS App开发中UITextField组件的常用属性小结

    2018-04-06 10:41:00 次阅读 稿源:互联网
    零七广告

    重点属性

    在 Xcode 中使用 IB 给视图拖上去一个文本框后,选中文本框,可以在Attribute Inspector中设置其各种属性。

    Attribute Inspector 分为三部分,分别是 Text Field、Control 和 View 部分。我们重点看看 Text Field 部分。

    Text Field 部分有以下选项:

    1、Text :设置文本框的默认文本。

    2、Placeholder : 可以在文本框中显示灰色的字,用于提示用户应该在这个文本框输入什么内容。当这个文本框中输入了数据时,用于提示的灰色的字将会自动消失。

    3、Background :

    4、Disabled : 若选中此项,用户将不能更改文本框内容。

    5、接下来是三个按钮,用来设置对齐方式。

    6、Border Style : 选择边界风格。

    7、Clear Button : 这是一个下拉菜单,你可以选择清除按钮什么时候出现,所谓清除按钮就是出一个现在文本框右边的小 X ,你可以有以下选择:

        7.1 Never appears : 从不出现
        7.2 Appears while editing : 编辑时出现
        7.3 Appears unless editing :
        7.4 Is always visible : 总是可见

    8、Clear when editing begins : 若选中此项,则当开始编辑这个文本框时,文本框中之前的内容会被清除掉。比如,你现在这个文本框 A 中输入了 "What" ,之后去编辑文本框 B,若再回来编辑文本框 A ,则其中的 "What" 会被立即清除。

    9、Text Color : 设置文本框中文本的颜色。

    10、Font : 设置文本的字体与字号。

    11、Min Font Size : 设置文本框可以显示的最小字体(不过我感觉没什么用)

    12、Adjust To Fit : 指定当文本框尺寸减小时,文本框中的文本是否也要缩小。选择它,可以使得全部文本都可见,即使文本很长。但是这个选项要跟 Min Font Size 配合使用,文本再缩小,也不会小于设定的 Min Font Size 。

    接下来的部分用于设置键盘如何显示。

    13、Captitalization : 设置大写。下拉菜单中有四个选项:

        13.1 None : 不设置大写
        13.2 Words : 每个单词首字母大写,这里的单词指的是以空格分开的字符串
        13.3 Sentances : 每个句子的第一个字母大写,这里的句子是以句号加空格分开的字符串
        13.4 All Characters : 所以字母大写

    14、Correction : 检查拼写,默认是 YES 。

    15、Keyboard : 选择键盘类型,比如全数字、字母和数字等。

    16、Appearance:

    17、Return Key : 选择返回键,可以选择 Search 、 Return 、 Done 等。

    18、Auto-enable Return Key : 如选择此项,则只有至少在文本框输入一个字符后键盘的返回键才有效。

    19、Secure : 当你的文本框用作密码输入框时,可以选择这个选项,此时,字符显示为星号。

    技巧

    下面来说两个小技巧:
    一、UITextField隐藏键盘

    1.点击键盘的return来隐藏键盘

    这个方法需要在相应的.h文件文件中实现UITextFieldDelegate协议。并在.m文件中添加如下方法
    代码如下:

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

    2.点击界面空白处来隐藏键盘

    这个方法的实现主要是给当前的view增加点击事件,并未点击事件增加相应的处理方法,此处是为了隐藏键盘,所以我们可以在点击事件对应的方法中让UITextField放弃第一响应者。
    代码如下:

    - (void)dismissKeyboard
    {
        NSArray *subViews = [self.view subviews];
        for (id inputText in subViews) {
            if ([inputText isKindOfClass:[UITextField class]]) {
                if ([inputText isFirstResponder]) {
                    [inputText resignFirstResponder];
                }
            }
        }
    }

    为当前的view增加点击事件
    代码如下:

    UITapGestureRecognizer *dismissKeyboardTap = [[UITapGestureRecognizer alloc]                                                initWithTarget:self                                                 action:@selector(dismissKeyboard)];
    [self.view addGestureRecognizer: dismissKeyboardTap];

    二、为内容增加校验
    代码如下:

    - (BOOL)textFieldShouldEndEditing:(UITextField *)textField
    {
        switch (textField.tag) {
            case 100://name
            {
                NSLog(@"this is nameField");
                //添加校验name的代码
                break;
            }
            case 101://phone
            {
                NSLog(@"this is phoneField");
                //添加校验phone的代码
                break;
            }
            case 102://email
            {
                NSLog(@"this is emailField");
                //添加校验email的代码
                break;
            }       
            default:
                break;
        }
        return YES;
    }

     

    零七网部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与零七网进行文章共享合作。

    零七广告
    零七广告
    零七广告
    零七广告