`

TextField中内容发生变化后自动更新到label中

    博客分类:
  • ios
ios 
阅读更多
TextField中内容发生变化后自动更新到label中,需要监听UITextField控件变化的事件,即当UITextField中内容发生变化时立即更新到UILable控件。

1)修改ViewController.h,添加操作
-(IBAction)textFieldDidChange:(id)sender;
//方法do与xib文件中的UITextField的Editting Changed事件关联起来



2)将UITextField控件与textFieldDidChange操作进行关联,选择Editting Changed事件


注意:菜鸟连线的时候,不知道如何选择Editting Changed事件,哈 哈  我也是尝试了几分钟  哎, 菜鸟嘛,可以理解  啦  啦 啦 ,选中UITextField控件,看右边,Editting Changed 后面有个小圆圈,左键按下,连线到 File'sOwner如图:
[img]

[/img]





3)修改ViewController.m,实现操作textFieldDidChange,如下所示
//textField正在编辑
-(IBAction)textFieldDidChange:(id)sender{
    label.text = textField.text;
}





8、编译、运行,在TextField中输入内容时,UILabel会即时更新

1)但是,存在一个问题:输入完毕,点击键盘右下角的return或点击view上其它空白区域时,键盘不会消失(这个与Android键盘不同),需要我们编码实现。

2)修改ViewController.h,添加操作
-(IBAction)textFieldDoneEndEditing:(id)sender;//方法textFieldDoneEndEditing与xib文件中的UITextField的Did End On Exit事件关联起来
-(IBAction)backgroudTap:(id)sender;//方法backgroudTap与xib文件中的view的Touch Down事件关联起来


3)将UITextField控件与textFieldDoneEndEditing操作进行关联,选择Did End On Exit事件


4)将view控件与backgroudTap操作进行关联,发现没有响应,
[img]

[/img]
选中ViewController.xib,再选中View,如上图所示,将view的calss由UIView修改为UIControl,因为能够触发操作方法的所有控件必须继承自UIControl。再次操作,进行操作关联。



5)修改ViewController.m,实现操作textFieldDoneEndEditing、backgroudTap,如下
//textField编辑完毕
-(IBAction)textFieldDoneEndEditing:(id)sender{
    //textField放弃第一响应者
    [sender resignFirstResponder];
}

//背景view被点击
-(IBAction)backgroudTap:(id)sender{
    [textField resignFirstResponder];
}


至此,已实现全部功能





  • 大小: 416 KB
  • 大小: 158.3 KB
分享到:
评论

相关推荐

    flutter 输入框组件TextField的实现代码

    我们给上面的代码新增 decoration 属性,设置相关属性,可以发现当我们的 TextField 获得焦点时,图标会自动变色,提示文字会自动上移。还可以看到我们加了一个 onChanged,用于监听输入框的变化。 Flutter 中的 ...

    swift苹果开发小程序,文字输入显示在屏幕上

    上述代码中的`textChanged(_:)`方法就是一个例子,它会在文本字段内容变化时被调用。 ```swift @objc func textChanged(_ sender: UITextField) { guard let inputText = sender.text else { return } // 更新...

    swift中RxSwift与RxCocoa的使用案例

    3. **数据绑定**:将ViewModel的属性绑定到UILabel,当ViewModel的数据变化时,UILabel自动更新。 ```swift viewModel.someProperty.bind(to: label.rx.text).disposed(by: disposeBag) ``` 以上只是基础的介绍...

    实现数据与视图双向绑定功能

    当模型中的数据发生变化时,视图会自动更新;同样,当用户在界面上进行交互改变视图状态时,模型也会同步更新。这种特性在MVVM(Model-View-ViewModel)设计模式中尤为常见。 在Java中,我们可以利用一些库或框架来...

    TransitionGuide

    《TransitionGuide》是由苹果官方出版的iOS 7应用开发转型指南文档,为开发者提供了过渡到iOS 7的新特性和用户界面变化的详细指导。该文档覆盖了从准备开始过渡、评估现有应用、以及更新UI和界面组件等多个方面。...

    bind和drive绑定到控件上.zip

    例如,你可以将一个Observable绑定到一个UILabel的`text`属性,每当Observable发出新的字符串,label的文本就会更新。`bind`操作符通常用于单向数据流,如用户输入、网络请求的结果等。 2. `drive`方法: `drive`与...

    wicket基础控件

    Model可以是简单的对象引用,也可以是可观察的模型,允许组件监听数据变化并自动更新UI。 以上是Wicket基础控件的一些关键概念,通过这些控件的组合和扩展,开发者可以构建出复杂且功能丰富的Web应用。在实际项目中...

    在 NetBeans IDE 中设计 Swing GUI - 教程

    例如,可以添加一个标签(Label)、一个文本框(TextField)或一个按钮(Button)等。具体步骤如下: - 从工具箱中选择所需的组件。 - 将所选组件拖放到`JFrame`容器中。 - 使用鼠标调整组件的大小和位置。 此外,还可以...

    java2实用教程(第三版)第七章课后习题答案(耿祥义).docx

    用户可以在第一个文本区域输入数据,当文本发生变化时,程序会统计所有输入行的总数,并计算它们的总和及平均值,结果展示在第二个文本区域中。 ### 2. T7_5 - 文本选择与传输 #### 知识点: - **文本选择**:`get...

    tapestry页面编辑组件

    这些组件不仅能够自动呈现UI,还能跟踪用户的输入变化,并将这些更改回传到服务器端进行处理。 1. **文本框(Textfield)**:Tapestry的Textfield组件用于接收用户的单行文本输入。通过属性绑定,它可以将用户的...

    JAVA编程计数器类Counter

    `init()`方法是Applet生命周期的一部分,在Applet加载到浏览器时自动调用。此方法初始化了计数器组件并添加到Applet中。同时为每个按钮和文本框添加了`ActionListener`监听器,以便响应用户的操作。 ##### 4. 动作...

    titanium_weatherSample

    4. **事件监听**:为了实现动态更新,开发者可能会添加地理定位功能,监听位置变化并根据新位置自动更新天气信息。这涉及到Titanium的Geolocation API和事件监听机制。 5. **模块化编程**:好的示例代码通常会遵循...

    用java实现图形用户界面和用户界面上按钮的功能借鉴.pdf

    2. **组件(Components)**:实验中用到了多种组件,如`Frame`(窗口)、`Button`(按钮)、`TextArea`(文本区域)、`TextField`(文本字段)、`Label`(标签)、`List`(列表)、`JRadioButton`(单选按钮)和`...

    SwiftUI-Chinese.zip

    在声明式编程中,开发者不是通过控制界面元素的属性变化来更新界面,而是定义界面的状态和视图之间的关系。当状态改变时,SwiftUI会自动计算出界面应该如何更新,这使得代码更加简洁,且易于维护。例如,你可以直接...

    经典的GridView72种使用技巧

    此外,还可以添加一个全选复选框,并在客户端脚本中处理其状态变化,以便自动选中所有行或取消选中所有行。 #### 6. 鼠标移到GridView某一行时改变该行的背景色 可以通过客户端脚本实现这一功能。有两种常见的实现...

    flex动态表单源码

    - 添加到容器:使用`addChild()`方法将表单元素添加到Form容器中。 - 处理数据绑定:通过Binding或ValueObject实现表单元素与数据模型之间的双向数据绑定。 3. 动态表单的应用场景: - 数据输入表单:根据数据库...

    定时关机源代码

    2. **用户界面设计**:使用了`java.awt`包下的组件如`Frame`、`Label`、`TextField`和`Button`等,构建了一个简洁直观的用户界面,用户可以在此界面上输入希望自动关机的时间,并通过按钮触发相应的操作。...

    struts2开发文档

    Struts2是一个流行的Java Web应用程序框架,用于构建MVC(模型-视图-控制器)架构的应用。这个框架简化了开发过程,...同时,不断学习和跟进Struts2的更新以及社区的讨论,能够帮助开发者更好地适应框架的发展和变化。

    ExtAspNet v2.2.1 (2009-4-1) 值得一看

    -Grid中TemplateField生成到页面中控件具有唯一ID,例如Grid1_ct5_Label2,Grid1_ct6_Label2(feedback:geruger)。 +2009-09-27 v2.1.2 -为Tree控件增加GetExpandAllNodesReference和...

    Extjs学习笔记之七 布局

    锚点布局允许组件的大小或位置根据容器的大小变化而自动调整,组件可以通过anchor属性绑定到容器的边缘。这在创建响应式设计时特别有用,因为锚点布局可以根据容器宽度的变化来动态调整组件的位置和尺寸。 示例代码...

Global site tag (gtag.js) - Google Analytics