• 常见控件的监听


    #import "ViewController.h"
    
    @interface ViewController ()<UIScrollViewDelegate ,UITextFieldDelegate>
    @property (weak, nonatomic) IBOutlet UITextField *textFlied; @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; // 1.UIButton 直接addTarget UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom]; [btn addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside]; // 2.UIScrollView 遵守协议,实现代理方法 UIScrollView *scrollView = nil; scrollView.delegate = self; // 3.UISegmentedControl 直接addTaget UISegmentedControl *s = [[UISegmentedControl alloc] initWithItems:@[@"123",@"234",@"456",@"567"]]; s.selectedSegmentIndex = 0; [s addTarget:self action:@selector(sClick:) forControlEvents:UIControlEventValueChanged]; s.center = CGPointMake(self.view.center.x, 200); [self.view addSubview:s]; // 4.textFlied 1)遵守协议,实现代理方法 2)textField比较特殊,它是继承自UIControl,也可以直接addTarget实现监听 self.textFlied.delegate = self; // [self.textFlied addTarget:self action:@selector(tfEditingDidBegin) forControlEvents:UIControlEventEditingDidBegin];
    // [self.textFlied addTarget:self action:@selector(tfEditingDidEnd) forControlEvents:UIControlEventEditingDidEnd];
    // [self.textFlied addTarget:self action:@selector(tfEditingChanged:) forControlEvents:UIControlEventEditingChanged]; } - (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event { // 退出键盘 // [self.textFlied endEditing:YES]; // 辞去第一响应者(退出键盘) // [self.textFlied resignFirstResponder]; [self.view endEditing:YES]; } #pragma mark - textFlied监听方法 - (void)tfEditingDidBegin { NSLog(@"开始编辑"); } - (void)tfEditingDidEnd { NSLog(@"结束编辑"); } - (void)tfEditingChanged:(UITextField *)tf { NSLog(@"%@",tf.text); } #pragma mark - UITextFieldDelegate - (void)textFieldDidBeginEditing:(UITextField *)textField { NSLog(@"开始编辑"); } - (void)textFieldDidEndEditing:(UITextField *)textField { NSLog(@"结束编辑"); } /** * 当textField文字改变就会调用这个方法 * @param string 用户输入的文字 * * @return YES:允许用户输入;NO:禁止用户输入 */ - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string { NSLog(@"shouldChangeCharactersInRange--%@",string); if ([string isEqualToString:@"1"]) { return NO; } return YES; } - (void)btnClick:(UIButton *)btn { } - (void)sClick:(UISegmentedControl *)s { NSLog(@"%ld",s.selectedSegmentIndex); } @end
  • 相关阅读:
    第十一周课程总结
    第十周课程总结
    第九周课程总结&实验报告
    第八周课程总结&实验报告
    第七周课程总结&实验报告
    第六周课程总结&实验报告
    课程总结
    第十四周
    第十三周
    第十二周
  • 原文地址:https://www.cnblogs.com/kongweiiwei/p/4650592.html
Copyright © 2020-2023  润新知