• UITextField的使用


    UITextField定义了一套代理,用来监听输入的内容

    //设置默认提示文本

        self.loginTextField.placeholder = @"手机号/QQ号/邮箱";

        //设置textfield 的边框类型boardstyled

        self.loginTextField.borderStyle = UITextBorderStyleRoundedRect;

        [self.view addSubview:self.loginTextField];

        //更改键盘下方的return的类型

        self.loginTextField.returnKeyType = UIReturnKeyGoogle;

        //设置键盘的类型

        self.loginTextField.keyboardType = UIKeyboardTypeURL;

        //设置delegate = self(当textfield的状态变了,当前这个类来接收回调方法)

        self.loginTextField.delegate = self;

        

        //设置左边的放大镜视图

        UIImage *searchImage = [UIImage imageNamed:@"search"];

        UIImageView *searchImageView = [[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 30, 30)];

        searchImageView.image = searchImage;

        

        self.loginTextField.leftView = searchImageView;

        self.loginTextField.leftViewMode = UITextFieldViewModeAlways ;

        

        //创建右边的下拉视图

        UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom];

        btn.frame = CGRectMake(0, 0, 15, 15);

        [btn setImage:[UIImage imageNamed:@"down"] forState:UIControlStateNormal];

        btn.tag = kChoiceButtonStatusDown;

        

        [btn addTarget:self action:@selector(choiceUser:) forControlEvents:UIControlEventTouchUpInside];

        

        UIView *rView = [[UIView alloc]initWithFrame:CGRectMake(0, 0, 30, 15)];

        rView.backgroundColor = [UIColor clearColor];

        [rView addSubview:btn];

        

        self.loginTextField.rightView = rView;

        self.loginTextField.rightViewMode = UITextFieldViewModeAlways;

    -(void)choiceUser:(UIButton *)sender{

        if (sender.tag == kChoiceButtonStatusDown) {

            [sender setImage:[UIImage imageNamed:@"up"] forState:UIControlStateNormal];

            sender.tag = kChoiceButtonStatusUp;

        }else{

            [sender setImage:[UIImage imageNamed:@"down"] forState:UIControlStateNormal];

            sender.tag = kChoiceButtonStatusDown;

            

        }

    }

    //当键盘的return键被按下了

    -(BOOL)textFieldShouldReturn:(UITextField *)textField{

        //如何隐藏键盘

        //当点击某个textfield,那么这个textfiled作为第一响应者,由于是一个textfield,需要用户输入内容,系统自动弹出键盘

        //需要取消第一响应者,系统就会隐藏键盘

        [textField resignFirstResponder];

        return  YES;

    }

    //当用户输入过程中,每按下一个字符,都会先来调用这个方法

    -(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string{

        NSLog(@"输入之前的字符%@",textField.text);

        NSLog(@"输入了一个字符:%@",string);

        NSLog(@"替换从%ld-%ld",range.location,range.length);

        return YES;

    }

  • 相关阅读:
    终于找到一个在IE8下可以使用搜索栏的输入法了
    在psp中播放电脑上的flv文件
    屏蔽红警3强制升级
    在windows7中安装了office了
    Flv视频编辑软件FlvEditor
    射杀恋人之日
    USB口不够用了
    年底了,游戏大作连连
    又一个好用的xbox360手柄驱动
    Windows7体验小记
  • 原文地址:https://www.cnblogs.com/yangqinglong/p/5363126.html
Copyright © 2020-2023  润新知