Swift3.0 UITextView写反馈界面

效果图
适配用的 SnapKit
使用介绍: http://www.hangge.com/blog/cache/detail_1097.html
private func creationTextView(){
let viewBg = UIView()
self.view.addSubview(viewBg)
viewBg.frame = CGRect(x:, y:, width:SCREEN_WITH - , height:)
viewBg.backgroundColor = UIColor.white
viewBg.layer.borderColor = UIColor.init(red: /255.0, green: /255.0, blue: /255.0, alpha: ).cgColor
viewBg.layer.borderWidth =
viewBg.layer.cornerRadius =
viewBg.clipsToBounds = true
let textView = UITextView()
viewBg.addSubview(textView)
textView.delegate = self
textView.backgroundColor = UIColor.white
textView.tintColor = UIColor.red
textView.font = UIFont.systemFont(ofSize: )
textView.textAlignment = .left
textView.contentInset = UIEdgeInsetsMake(, , , )
//可以滚动
textView.isScrollEnabled = true
//自适应高度
textView.autoresizingMask = UIViewAutoresizing.flexibleHeight
textView.snp.makeConstraints { (mark) in
mark.top.equalTo()
mark.left.equalTo()
mark.right.equalTo()
mark.bottom.equalTo(-)
}
//反馈字符长度限制
viewBg.addSubview(label_length)
label_length.text = ""
label_length.textColor = ColorViewBG
label_length.textAlignment = .right
label_length.snp.makeConstraints { (mark) in
mark.bottom.equalTo(-)
mark.right.equalTo(-)
mark.height.equalTo()
mark.width.equalTo()
}
}
简单的计算字符长度,在这里输入内容超过时没有做限制和提醒!
// MARK: -TextViewDelegate
func textViewDidChange(_ textView: UITextView) {
//计算剩余可输入字符长度
let length = textView.text.characters.count
label_length.text = "\(150 - length)"
}
Swift3.0 UITextView写反馈界面的更多相关文章
- swift3.0 代码创建经典界面的九宫图--优化篇
在上一篇只是简单实现了九宫图效果,本章需要形成APP界面九宫图效果 override func viewDidLoad() { super.viewDidLoad() createnine() } / ...
- swift3.0自定义相机界面
这是公司上上上一个项目的自定义相机界面,原来是swift2.0写的,今天改为swift3.0,记录一下. 效果图如下: ...
- swift3.0 创建经典界面的九宫图
网络上很多例子都是早期的 Object-C的效果,现在用到Swift3.0开发,故把网络上的例子翻译过来,达到基本的效果.可是现在这个还不算很满意,再下次继续进行优化 override func vi ...
- swift3.0 自定义键盘
...绕了一大圈,又绕回原生来了,今天,学习一下swift3.0语法下的自定义键盘.效果图如下: 其实,很简单,只需要把UITextView(或者UITextField)的inputView属性设置为 ...
- Swift2.3 --> Swift3.0 的变化
Swift3.0语法变化 首先和大家分享一下学习新语法的技巧: 用Xcode8打开自己的Swift2.3的项目,选择Edit->Convert->To Current Swift Synt ...
- Swift3.0都有哪些变化
从写第一篇Swift文章的时候到现在Swift已经从1.2发展到了今天的3.0,这期间由于Swift目前还在发展阶段并不能向下兼容,因此第一篇文章中的部分代码在当前的Xcode环境中已经无法运行.在W ...
- 打造高仿QQ的友盟反馈界面(MVP模式)
什么是MVP呢,简单来说就是将view层和逻辑完全独立出来,让逻辑和显示完全独立.本例中就是采用了这种模式,让activity作为view层,activity中涉及了适配器,所以这里尝试让适配器作为P ...
- Xcode8中Swift3.0适配问题
写在前面 收到一些小伙伴的来信,觉得可能下边没有表达清楚,先把大家关心的要点在此进行总结,有兴趣的可以看看下边的研究过程,没兴趣的直接看这段即可. Xcode8支持Swift2.3和Swift3.0两 ...
- Swift3.0语法变化
写在前面 首先和大家分享一下学习新语法的技巧:用Xcode8打开自己的Swift2.3的项目,选择Edit->Convert->To Current Swift Syntax- 让Xcod ...
随机推荐
- BUPT复试专题—内存分配(2014-2)
题目描述 在操作系统中,内存分配是非常重要的工作.己知内存空间由N个内存块组成,这些内存块从1到N编号.进行内存分配时,操作系统将选择一块大小足够的内存全部分配给请求内存的进程.例如,当进程请求10M ...
- centos Linux 常用命令汇总
CentOS 关闭防火墙 1) 永久性生效,重启后不会复原 开启: chkconfig iptables on 关闭: chkconfig iptables off 2) 即时生效,重启后复原 开启: ...
- ok6410[000] ubuntu1604_64bit下安装wps
虽说Ubuntu下有自动的office工具,不过使用上体验很差.而国内最好的office软件也就是金山的wps. ------------------------------------------- ...
- CPU维修技术
中央处理单元(Central Process Unit)简称CPU,是电脑的核心部件,负责处理和运算电脑内部所有数据.因其在电脑中的地位相当重要,所以一旦发生故障就会造成很严重的后果. [技术66]开 ...
- LeetCode——Binary Tree Level Order Traversal
Given a binary tree, return the level order traversal of its nodes' values. (ie, from left to right, ...
- VUE 之 组件
组件是为了解决页面布局的. 什么是单页面? 答:整个页面的切换都是在这个页面上进行变化的,没有页面的刷新. 1.全局组件 1.1全局组件流程: 1.创建全局组件======>创建一个Vue ...
- 答案{{index==0 ? '一' : (index==1 ? '二':'三' )}}
答案{{index==0 ? '一' : (index==1 ? '二':'三' )}}
- Java异步套接字实例
服务端 package com.test.server; import java.io.IOException; import java.net.InetSocketAddress; import j ...
- ReactNative Android 研究
先从ReactRootView入手吧,它是一个FrameLayout mReactRootView.startReactApplication 这的start其实是会等到inital onMeasur ...
- CoreData兼容iOS9和iOS10
由于iOS10之后CoreData Stack的更改无法在iOS9的系统中运行,所以我们需要对上一小节中封装的工具类进行系统版本的兼容 iOS9和iOS10中CoreData最本质的区别其实就是管理对 ...