UITextVIEw顾名思义用来显示文本的,其实文本内容可以有不同类型的,同UILabel一样,使用NSAttributeString来设置文本的类型.
1.创建一个基本的UITextVIEw,它可以有编辑状态,似乎是UITextFIEld的扩展,多行文本编辑嘛.
vartext:UITextVIEw=UITextVIEw(frame:CGRect(x:50,y:50,wIDth:300,height:100))text.text="这是基本的UITextVIEw"text.textContainer.lineFragmentpadding=5//行离左边的距离text.textContainerInset=UIEdgeInsetsMake(5,5,5)//理解内容到边框的距离text.dataDetectorTypes=UIDataDetectorTypes.link
2.创建一个显示HTML标签的UITextVIEw
vartext1:UITextVIEw=UITextVIEw(frame:CGRect(x:50,y:160,height:100))vardata="<imgsrc='http://www.wutongwei.com/upload/2015/02/12/1423731853934.jpg'wIDth=50><ahref='http://www.wutongwei.com'>吴统威</a>的博客是一个分享技术的一个博客网站,分享编程技术, *** 作系统技术,移动开发技术,数据库技术等".dataUsingEnCoding(NSUTF32StringEnCoding,allowLossyConversion:true)vartextatrr1=NSMutableAttributedString(data:data!,options:[NSdocumentTypedocumentAttribute:NSHTMLTextdocumentType],documentAttributes:nil,error:nil)text1.attributedText=textatrr1text1.editable=falsetext1.selectable=false//设置为True时,链接可以点击
3.创建一个带链接的属性文本,追加文本,链接配合textVIEw(textVIEw: UITextVIEw,shouldInteractWithURL URL: NSURL,inRange characterRange: NSRange)方法,设置不同类型的协议的请求
vartext2:UITextVIEw=UITextVIEw(frame:CGRect(x:50,y:270,height:150))vartextatrr2=NSMutableAttributedString(string:"吴统威的博客",attributes:[NSlinkAttributename:"app://www.wutongwei.com"])textatrr2.appendAttributedString(NSAttributedString(string:"是一个分享技术的博客网站"))text2.attributedText=textatrr2text2.delegate=selftext2.scrollEnabled=falsetext2.editable=falsetext2.selectable=true//必须设置为true才能有点击跳转
//自定义协议,处理相关逻辑functextVIEw(textVIEw:UITextVIEw,shouldInteractWithURLURL:NSURL,inRangecharacterRange:NSRange)->Bool{NSLog("链接地址:\(URL.description)")returntrue}
附:全部代码
importUIKitclassVIEwController:UIVIEwController,UITextVIEwDelegate{overrIDefuncvIEwDIDLoad(){super.vIEwDIDLoad()//DoanyadditionalsetupafterloadingthevIEw,typicallyfromanib.//普通的UITextVIEwvartext:UITextVIEw=UITextVIEw(frame:CGRect(x:50,5)//理解内容到边框的距离text.dataDetectorTypes=UIDataDetectorTypes.linkself.vIEw.addSubvIEw(text)//UITextVIEw显示HTML文本vartext1:UITextVIEw=UITextVIEw(frame:CGRect(x:50,error:nil)text1.attributedText=textatrr1text1.editable=falsetext1.selectable=false//设置为True时,链接可以点击self.vIEw.addSubvIEw(text1)//带链接的属性文本,链接配合textVIEw(textVIEw:UITextVIEw,inRangecharacterRange:NSRange)方法,设置不同类型的协议的请求vartext2:UITextVIEw=UITextVIEw(frame:CGRect(x:50,attributes:[NSlinkAttributename:"app://www.wutongwei.com"])textatrr2.appendAttributedString(NSAttributedString(string:"是一个分享技术的博客网站"))text2.attributedText=textatrr2text2.delegate=selftext2.scrollEnabled=falsetext2.editable=falsetext2.selectable=true//必须设置为true才能有点击跳转self.vIEw.addSubvIEw(text2)}overrIDefuncdIDReceiveMemoryWarning(){super.dIDReceiveMemoryWarning()//dispoSEOfanyresourcesthatcanberecreated.}//自定义协议,inRangecharacterRange:NSRange)->Bool{NSLog("链接地址:\(URL.description)")returntrue}}
效果图
650) this.wIDth=650;" alt="B7F961F5-cdaC-496F-B831-7491F403A46A.jpg" src="http://img.jb51.cc/vcimg/static/loading.png" title="1427946500372079841.jpg" src="http://www.wutongwei.com/ueditor/Jsp/upload/image/20150402/1427946500372079841.jpg">
转载至吴统威的博客:http://www.wutongwei.com/front/infor_showone.tweb?ID=90
总结以上是内存溢出为你收集整理的The Swift Code之UITextView的创建,以及不同的状态和外观全部内容,希望文章能够帮你解决The Swift Code之UITextView的创建,以及不同的状态和外观所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)