首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    iOS输入框字符限制

    iOS输入框字符限制,不同实现方式的对比: 方法1,通过监听textField的UIControl.Event.editingChanged,在对应的方法里做长度拦截判断 方法2,通过textField...方法2 那既然上面的方法1在iOS12上完全不能用,来试试方法2的实现,即在textField的代理方法中判断,代码如下: import UIKit class ViewController: UIViewController...我想要输入拼音时不校验,在选择拼音变成汉字时,再去校验这个长度是否超出?要怎么做呢?...由于方法一之前不兼容iOS12,所以我们优先考虑在方法二的代理方法中添加markedTextRange是否为空的判断,但是在代理方法中打印textField.markedTextRange会发现,这个地方打印出来的...range比真实的慢一步,即输入了一个拼音时,这个方法中打印出来时nil,输入第二个拼音后,这个方法中打印出来的是range = 0...1,所以在这个方法里并不能准确的判断这个值。

    45940

    iOS中storyboard故事板使用Segue跳转界面、传值

    对应多个,基本一个应用只需要一个storyboard就可以了,不再需要为每个控制器创建一个xib文件,从这点上来说,还是很方便的,在storyboard中查看各个界面的跳转也很方便,但之前一直使用xib...使用Segue在界面间传值: 我们在两个视图中都添加了TextField编辑输入框,这样我们可以在Page1的页面中输入数据来传递到Page2显示,同样的可以在Page2中输入数据回到Page1显示。...// 呼叫协议中的方法并带入编辑框中的值 [self.delegate passValue:self.textField.text]; } 这样Page2的部分就完成了,回到Page1...) IBOutlet UITextField *textField; @end 然后在Page1的.m文件中,在刚才的Segue响应方法中添加委托为self: - (void)prepareForSegue...; // 对page2中的变量设置值 [page2 setValue:self.textField.text forKey:@"string"]; //

    1.5K20

    在SwiftUI中使用UIKit视图

    在右侧的预览中,我们可以看到placeholder可以正常显示,如果你在其中输入文字,表现的状态也同TextField完全一致。...在makeUIView中添加如下语句,此时文本输入框的尺寸就和预期一致了: textfield.setContentHuggingPriority(.defaultHigh, for:...如果按照TextField的正常行为,当我们在其中输入任何文本时,下方的Text中应该显示出对应的内容,不过在我们当前的代码版本中,并没有表现出预期的行为。...最后在makeUIView中添加: textfield.delegate = context.coordinator UITextField在发生特定事件后将在协调器中查找并调用对应的代理方法。...官方的原生方案 SwiftUI这几年发展的很快,每个版本都增加了不少新功能,或许你需要的功能已经被添加。苹果最近两年对SwiftUI的文档支持提高了不少,但还没到令人满意的地步。

    8.3K22

    NSNotificationCenter 通知的使用方法详解你要知道的KVC、KVO、Delegate、Notification都在这里

    视图中,NextViewController中包含一个输入框和一个按钮,用户在完成输入后点击按钮退出视图跳转回ViewController并在ViewController的标签中展示用户填写的数据,接下来看一下代码...上面的栗子很简单,但有一点是需要强调的,我们在NextViewController中发送的通知是在main线程中发送的,因此ViewController中的监听器回调函数也会在main线程中执行,因此我们在监听器回调函数中修改...UI不会产生任何问题,但当通知是在其他线程中发送的,监听器回调函数很有可能就是在发送通知的那个线程中执行,我们知道UI的更新必须在主线程中执行,这个时候就需要注意,如果通知监听器回调函数有需要更新UI的代码...redColor]; [self.view addSubview:self.containerView]; //用户输入的UITextField...self.textField.placeholder = @"input

    2.3K60

    iOS开发之XLForm的使用

    导入项目.png 二、改造表单ViewController 让ViewController继承自XLFormViewController,并重写下面的两个方法 @interface OneViewController...效果图.png 五、总结 前面两步是官方文档中可以找到的,也很简单,关键在于initializeForm方法中具体构造表单的过程,这里有必要强调几点: XLFormViewController实现了UITableViewDataSource...中的方法都可以正常使用。...section可能有多个row 每个表单中的具体信息最后都落脚到XLFormRowDescriptor中,通过它可以配置不同样式的表单项,通过构造函数的rowType指定具体的表单类型,该框架提供了非常丰富的...,往往有同学不知道具体如何才能设置属性,比如怎么设置表单输入框的placeholder?

    1.5K80

    【 iOS 应用开发 】 UIKit 控件 ( UIView 属性 | storyboard 设置 | 模拟器 | 拖线关联 | tag | 软键盘操作 | 颜色值 | 代码生成控件 | 动画设置 )

    - ( 5 ) 定义控件属性 并 关联控件 定义控件属性 : 如果要在 ViewController 中操作控件, 就需要在 ViewController 中定义该控件的对象; 1.定义 TextField...方法 退出软键盘, 该方法只能关闭控件本身触发的软键盘, 示例 [self.textField resignFirstResponder] 关闭 textField 属性对应的控件触发的软键盘; ②...: NSString * number1Str = self.number1TextField.text; 使用 self....方式访问 @property 修饰的成员变量, 即访问其自动生成的 getter 方法, number1TextField.text 是访问其 text 属性, 即用户输入的值; 3.将 NSString...值 NSString * number1Str = self.number1TextField.text; NSString * number2Str = self.number2TextField.text

    5K30

    Protocol与Delegate 使用方法详解你要知道的KVC、KVO、Delegate、Notification都在这里

    ,规定一系列实现类应该遵守的方法,OC中protocol协议远没有Java中的interface使用频率高,毕竟在Java中面向接口编程更加盛行,但OC使用较频繁的代理模式delegate就是以protocol...]; [self.view addSubview:self.completeButton]; } return self; } //用户完成输入点击按钮的事件处理器 -...的逻辑比较简单,在UI方面只有一个UITextField的输入框和一个完成按钮UIButton,当用户输入完成后点击完成按钮,NextViewController会通过协议声明的方法来通知委托对象接收相关参数...当点击按钮跳转到NextViewController,在输入框输入Hello,World!,并点击按钮退出NextViewController后的ViewController具体效果如下: ?...还有一种是数据源dataSource,对象需要从委托对象中获取数据,此时在代理协议中声明的方法就会有返回值,有时也会传递一定的形参通知委托对象返回什么样的数据。数据流向如下图所示: ?

    1K90

    1.注册或登录页面设计:UILabel,UIButton,UITextField

    为了让繁琐的知识点介绍不至于太枯燥泛味,我采用“总-->分”的方式来进行讲解,即先介绍结果,让大家提起兴趣来,然后再针对结果中遇到的各个知识点来分别进行讲解。...说明: 这里为了展现UITextField的文本框关联键盘的设置,这里把“密码”和“确定密码”的关联键盘都设置为数字键盘,实际应用中密码一般都允许为数字或字母。 实现了键盘收回操作。...,在什么时候显示,用于一次性删除输入框中的内容 text.clearButtonMode = UITextFieldViewModeAlways; typedef enum { UITextFieldViewModeNever...//限制输入文本的长度 - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString...触发了这个事件以后,执行butClick:这个方法,addTarget:self 的意思是说,这个方法在本类中 也可以传入其他类的指针*/ [button1

    2.4K50

    iOS 文本输入控制(献上框架)

    ---- 一、痛点 我们在业务开发中,往往会遇到需要限制文本输入的需求,比如只能输入数字、不能输入空格,稍微复杂一点的比如小数点后最多两位的价格输入。当然,若你的正则表达式玩儿得很溜,这些并不是难题。...于是,我写下这篇文章,总结一下关于UITextField和UITextView输入控制的那些事儿,并且还献上一个框架。...之前 textfield.delegate = self; - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange...若需要输入英文或者中午的描述性字符的时候,一般做的非法字符限制比较少,更多的是做长度限制,就使用[textfield addTarget:self action:@selector(textChange...所以,接下来要讲解的是重点思想。 方法重定向 首先,我大概说明一下OC中给一个对象发送消息是个什么过程: 遍历当前类的方法列表,找到该方法并且执行IMP方法体(有缓存机制提高查找效率)。

    1.1K120
    领券