IOS 控件 - TextView 实现 placeholder 备忘

转载来源:http://blog.sina.com.cn/s/blog_693de6100101cmdw.html

基本思路:

完成按钮:检测到 \n 换行功能就释放键盘。

placeholder功能:用一个label写了文字,然后当检测到长度不为0的时候就把label隐藏。 由于输入法有拼音,所以要加多个判断!! adviceMsg为textView。

使用方法:

  1. 添加<UITextViewDelegate>协议
  2. 设置textView.delegate = self;
  3. 添加placeholderLabel和textView,并修改相应代码
-(BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text
{
   if ([text isEqualToString:@"\n"]) {//检测到“完成”
       [textView resignFirstResponder];//释放键盘
       return NO;
   }
   if (adviceMsg.text.length==0){//textview长度为0
       if ([text isEqualToString:@""]) {//判断是否为删除键
           labeltext.hidden=NO;//隐藏文字
       }else{
           labeltext.hidden=YES;
       }
   }else{//textview长度不为0
       if (adviceMsg.text.length==1){//textview长度为1时候
           if ([text isEqualToString:@""]) {//判断是否为删除键
               labeltext.hidden=NO;
           }else{//不是删除
               labeltext.hidden=YES;
           }
           }else{//长度不为1时候
           labeltext.hidden=YES;
           }
   }
   return YES;
}  
时间: 2024-11-09 03:20:23

IOS 控件 - TextView 实现 placeholder 备忘的相关文章

C# 属性控件的应用(备忘)

自己定义的控件属性:[Browsable(true),Bindable(true),Category("数据"),DefaultValue(""),Localizable(true),        Description("Items列表项集合"), DesignerSerializationVisibility(DesignerSerializationVisibility.Content),//指定集合属性可序列化        Edito

IOS控件UITextView 实现placeholder效果和解决UITableView键盘遮挡

平时开发中老是出现多行的文本而且要有placeholder提示,就自己整理项目中部分代码以供参考.讨论,希望有更好实现方法的人多多指教. 思路:通过改变UITextView的文本颜色实现placeholder效果,通过改变UITableView的setContentOffset方法解决键盘遮挡 1.创建UITextView textView = [[UITextViewalloc] init]; textView.font = [UIFontsystemFontOfSize:14]; textV

从零开始学ios开发(四):IOS控件(1),Image View、Text Field、Keyboard

长话短说,谢谢大家的关注,这篇写了好长时间,下面继续学习ios.我将用2到3篇的篇幅来学习iphone上的一些常用控件,包括Image View.Text Field.Keyboard.Slider等等,这篇的内容包括ImageView和Keyboard的使用.完成后的效果图如下: 1)创建一个新的project,选择“Single View Application”,命名为“Control Fun”,然后保存.一些和前几章相似的步骤在从这篇起就开始一笔待过了,也不再做截图了,例如这里的创建一个

设计一个 iOS 控件

代码的等级:可编译.可运行.可测试.可读.可维护.可复用 前言 一个控件从外在特征来说,主要是封装这几点: 交互方式 显示样式 数据使用 对外在特征的封装,能让我们在多种环境下达到 PM 对产品的要求,并且提到代码复用率,使维护工作保持在一个相对较小的范围内:而一个好的控件除了有对外一致的体验之外,还有其内在特征: 灵活性 低耦合 易拓展 易维护 通常特征之间需要做一些取舍,比如灵活性与耦合度,有时候接口越多越能适应各种环境,但是接口越少对外产生的依赖就越少,维护起来也更容易.通常一些前期看起来

iOS控件之UIResponder类

iOS控件之UIResponder类 在iOS中UIResponder类是专门用来响应用户的操作处理各种事件的,我们知道UIApplication.UIView.UIViewController这几个类是直接继承自UIResponder,UIWindow是直接继承自UIView的一个特殊的View,所以这些类都可以响应事件.当然我们自定义的继承自UIView的View以及自定义的继承自UIViewController的控制器都可以响应事件.iOS里面通常将这些能响应事件的对象称之为响应者. iO

从零开始学ios开发(六):IOS控件(3),Segmented Control、Switch

这次的学习还是基于上一个项目继续进行(你也可以新建一个项目)学习Segmented Control和Switch. Segmented Control Switch Segmented Control和Switch的主要区别在于Segmented Control可以有多个值进行选择,而Switch只有2个值. 1)添加Segmented Control从object library中拖一个Segmented Control到iphone界面上然后调整Segmented Control位置以及它的

ios学习笔记图片+图片解释(c语言 oc语言 ios控件 ios小项目 ios小功能 swift都有而且笔记完整喔)

下面是目录其中ios文件夹包括了大部分ios控件的介绍和演示,swift的时完整版,可以学习完swift(这个看的是swift刚出来一周的视频截图,可能有点赶,但是完整),c语言和oc语言的也可以完整的学习完所需知识,,其他文件夹的内容如其名说描述一样 没张图片都有文字说明,可以需要该功能的时候搜索一下然后打开图片就可以学习到 网盘下载地址:需要的话给留言我再传上去 http://www.cnblogs.com/langtianya原创 ios学习笔记图片+图片解释(c语言 oc语言 ios控件

从零开始学ios开发(五):IOS控件(2),Slider

下面继续学习ios的其他控件,这次会使用到的控件有Slider,当然还有一些之前已经使用过的控件Label. 这次我们不新建一个project了,当然如果你愿意重新创建一个新的项目也完全可以,我们还是使用上一篇的项目Control Fun. 上一篇中,我们最后的成果如下图所示我们添加了一个ImageView,2个Label和2个TextField,现在我们继续在此基础上添加其他的控件. 1)添加Slider和LabelSlider类似于一个滑块,左右(或者上下)滑动来改变数值,在object l

iOS控件——UIView的viewWithTag:(int)findTag方法描述

UIView拥有一个viewWithTag:(int)findTag方法,调用方式为[MyView viewWithTag:整形数字]该方法返回tag == findTag的控件.ios控件中允许多个控件的tag相同,该方法实现步骤如下: 1.如果MyView的tag值等于需要寻找的tag值,则返回MyView本身: 2.如果MyView的tag值不等于需要寻找的tag值,则查找MyView的子控件,即遍历MyView.subviews数组: 3.遍历MyView.subviews数组时,返回第