Swift - Button,Label

Swift-Button的常用

func setButton()
 {
    // 创建一个类型为contactAdd的按钮
    let button:UIButton = UIButton(type:.contactAdd)
    
    // 设置按钮的位置和大小
    button.frame = CGRect(x:10, y:150, width:100, height:30)
    
    //设置按钮文字
    button.setTitle("普通按钮", for:.normal)
    //        button.setTitle("触摸状态", for: .highlighted)
    //        button.setTitle("禁用状态", for: .disabled)
    
    // 设置文字颜色
    button.setTitleColor(UIColor.red, for: UIControlState.normal)
    button.setTitleColor(UIColor.blue, for: .highlighted)
    
    // 设置按钮阴影颜色
    button.setTitleShadowColor(UIColor.green, for: UIControlState.normal)
    
    // 改变图片 但改后的图片是按钮的默认色:蓝色 丢失了图片的原色
    button.setImage(UIImage(named: "cocktail_dog"), for: UIControlState.normal)
    
    // 改变图片 保证图片不失真
    let buttonImage = UIImage(named:"cocktail_dog")?.withRenderingMode(.alwaysOriginal)
    button.setImage(buttonImage, for: UIControlState.normal)
    
    button.adjustsImageWhenHighlighted = false //使触摸模式下按钮也不会变暗(半透明)
    button.adjustsImageWhenDisabled = false //使禁用模式下按钮也不会变暗(半透明)
    
    // button的处理事件
    //        button .addTarget(self, action: #selector(buttonAction), for:.touchUpInside)
    button .addTarget(self, action: #selector(action2(button:)), for:.touchUpInside)
    self.view.addSubview(button)
}

func buttonAction() {
    print("按钮无数据")
}

func action2(button:UIButton)
{
    print("按钮事件:%@", button.title(for: .normal))
    let str:String =  button.title(for: .normal)!
    
    if str == "按钮" {
        print("按钮相等")
    }
}

关于Button的一些类型

/*
 按钮有下面四种类型:
 UIButtonType.ContactAdd:前面带“+”图标按钮,默认文字颜色为蓝色,有触摸时的高亮效果
 UIButtonType.DetailDisclosure:前面带“!”图标按钮,默认文字颜色为蓝色,有触摸时的高亮效果
 UIButtonType.System:前面不带图标,默认文字颜色为蓝色,有触摸时的高亮效果
 UIButtonType.Custom:定制按钮,前面不带图标,默认文字颜色为白色,无触摸时的高亮效果
 UIButtonType.InfoDark:为感叹号“!”圆形按钮
 UIButtonType.InfoLight:为感叹号“!”圆形按钮
 
 常用的触摸事件类型:
 TouchDown:单点触摸按下事件,点触屏幕
 TouchDownRepeat:多点触摸按下事件,点触计数大于1,按下第2、3或第4根手指的时候
 TouchDragInside:触摸在控件内拖动时
 TouchDragOutside:触摸在控件外拖动时
 TouchDragEnter:触摸从控件之外拖动到内部时
 TouchDragExit:触摸从控件内部拖动到外部时
 TouchUpInside:在控件之内触摸并抬起事件
 TouchUpOutside:在控件之外触摸抬起事件
 TouchCancel:触摸取消事件,即一次触摸因为放上太多手指而被取消,或者电话打断
 */

Swift里Label的使用

func setLabel() {
    let label = UILabel(frame:CGRect(x:50, y:300, width:200, height:30))
    label.text = "这是一个Label"
    self.view .addSubview(label)
    
    label.backgroundColor = UIColor.lightGray
    label.textColor = UIColor.red
    label.textAlignment = NSTextAlignment.center
    
//        label.shadowColor = UIColor.green
//        label.shadowOffset = CGSizeMake(5, 5)
   
    // 字体的设置
    label.font = UIFont.systemFont(ofSize: 15)
//        label.font = UIFont(name:"Zapfino", size:12)
    
    // 文字过长时的省略方式
    /*
     case byWordWrapping // Wrap at word boundaries, default
     
     case byCharWrapping // Wrap at character boundaries
     
     case byClipping // Simply clip
     
     case byTruncatingHead // Truncate at head of line: "...wxyz"
     
     case byTruncatingTail // Truncate at tail of line: "abcd..."
     
     case byTruncatingMiddle // Truncate middle of line:  "ab...yz"
     */
    
  //        label.lineBreakMode=NSLineBreakMode.byWordWrapping                  // 截去多余部分也不显示省略号
 //        label.lineBreakMode=NSLineBreakMode.byCharWrapping        // 截去多余部分也不显示省略号
 //        label.lineBreakMode=NSLineBreakMode.byClipping        // 截去多余部分也不显示省略号
 //        label.lineBreakMode=NSLineBreakMode.byTruncatingHead  //隐藏头部并显示省略号
 //        label.lineBreakMode=NSLineBreakMode.byTruncatingTail  //隐藏尾部并显示省略号
//         label.lineBreakMode=NSLineBreakMode.byTruncatingMiddle   //隐藏中间部分并显示省略号
    
    // 文字大小自适应标签宽度
//        label.adjustsFontSizeToFitWidth=true //当文字超出标签宽度时,自动调整文字大小,使其不被截断
    
    // 自动换行,0表示没有行数限制 注意行高
//        label.numberOfLines=2  //显示两行文字
    
    //设置文本高亮
//        label.isHighlighted = true
    //设置文本高亮颜色
//        label.highlightedTextColor = UIColor.green
    
    
    // 富文本的显示
    //富文本设置
    let attributeString = NSMutableAttributedString(string:"welcome to hangge.com")
    //从文本0开始6个字符字体HelveticaNeue-Bold,16号
    attributeString.addAttribute(NSFontAttributeName, value: UIFont(name: "HelveticaNeue-Bold", size: 18)!,
                                 range: NSMakeRange(0,6))
    //设置字体颜色
    attributeString.addAttribute(NSForegroundColorAttributeName, value: UIColor.blue,
                                 range: NSMakeRange(0, 3))
    //设置文字背景颜色
    attributeString.addAttribute(NSBackgroundColorAttributeName, value: UIColor.green,
                                 range: NSMakeRange(7,3))
    label.attributedText = attributeString
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,362评论 5 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,330评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,247评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,560评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,580评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,569评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,929评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,587评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,840评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,596评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,678评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,366评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,945评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,929评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,165评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,271评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,403评论 2 342

推荐阅读更多精彩内容