Swift - 多行文本输入框(UITextView)的用法

时间:2023-03-09 03:19:46
Swift - 多行文本输入框(UITextView)的用法
1,多行文本控件的创建
1
2
3
4
var textview=UITextView(frame:CGRectMake(10,100,200,100))
textview.layer.borderWidth=1  //边框粗细
textview.layer.borderColor=UIColor.grayColor().CGColor //边框颜色
self.view.addSubview(textview)

2,是否可编辑

1
textview.editable=false

3,内容是否可选

1
textview.selectable=false

4,属性font设置字体,textColor设置字体颜色,textAlignment设置对齐方式

5,给文字中的电话号码和网址自动加链接
1
2
3
4
textview.dataDetectorTypes = UIDataDetectorTypes.None //都不加链接
textview.dataDetectorTypes = UIDataDetectorTypes.PhoneNumber //只有电话加链接
textview.dataDetectorTypes = UIDataDetectorTypes.Link //只有网址加链接
textview.dataDetectorTypes = UIDataDetectorTypes.All //电话和网址都加

6,自定义选择内容后的菜单

我们在看新闻或小说的时候,常常在点选文字后会弹出菜单进行选择,复制等操作。我们可以在这个菜单上添加一些其他内容,如加上“邮件”“微信”等按钮选项
Swift - 多行文本输入框(UITextView)的用法
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import UIKit
class ViewController: UIViewController {
    override func viewDidLoad() {
        super.viewDidLoad()
         
        var mail = UIMenuItem(title: "邮件", action: "onMail")
        var weixin = UIMenuItem(title: "微信", action: "onWeiXin")
        var menu = UIMenuController()
        menu.menuItems = NSArray(array: [mail,weixin])       
    }
     
    func onMail(){
        println("mail")
    }
     
    func onWeiXin(){
        println("weixin")
    }
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
    }
}