<span >overrIDe func vIEwDIDLoad() { super.vIEwDIDLoad() let label1 = UILabel(frame: CGRectMake(10,50,300,400)) label1.text = "swift" // 背景颜色,字体颜色,对齐方式 label1.backgroundcolor = UIcolor.graycolor() label1.textcolor = UIcolor.yellowcolor() label1.textAlignment = NSTextAlignment.Center // 文字大小自适应 label1.adjustsFontSizetoFitWIDth = true // 设置最小能接受的缩放比例 label1.minimumScaleFactor = 0.8 // 设置行数 0表示行数不限 label1.numberOflines = 0 // 换行方式(按字母换行) label1.lineBreakMode = .ByCharWrapPing // 字体设置:系统字体的30号 正常,粗体,斜体;个性化字体 label1.Font = UIFont.systemFontOfSize(30) label1.Font = UIFont.boldSystemFontOfSize(30) label1.Font = UIFont.italicSystemFontOfSize(30) label1.Font = UIFont(name: "Zapfino",size: 20) // 通过如下方式可以获得系统支持的左右字体名称 print(UIFont.familynames()) // 阴影设置 label1.shadowcolor = UIcolor.lightGraycolor() label1.shadowOffset = CGSizeMake(3,3) self.vIEw.addSubvIEw(label1) }</span>
如上为UILabel的设置方式
下面来说一说UIbutton
下面是一些基本的设置:
<span >@IBOutlet weak var button: UIbutton! overrIDe func vIEwDIDLoad() { super.vIEwDIDLoad() button.backgroundcolor = UIcolor.lightGraycolor() // 另一种按钮的创建方式 let button1 = UIbutton(type: UIbuttonType.RoundedRect) button1.layer.cornerRadius = 5 button1.frame = CGRectMake(10,44) button1.backgroundcolor = UIcolor.lightGraycolor() button1.setTitle("bello hello",forState: UIControlState.normal) self.vIEw.addSubvIEw(button1) // 设置按钮的文字和颜色 并且是在普通状态下的字 button.setTitlecolor(UIcolor.greencolor(),forState: UIControlState.normal) button.setTitle("bello hello",forState: UIControlState.normal) button.layer.cornerRadius = 5 // 设置按钮的字体和行数 button.TitleLabel?.Font = UIFont(name: "Zapfino",size: 30) button.TitleLabel?.numberOflines = 0 }<span ></span></span>
接下来是按钮的状态:
有的按钮在吃饭,有的按钮在睡觉。。。噗,开玩笑的:
state:
1、normal:普通状态,此时木有与按钮进行任何交互
2、Highlighted:高亮状态,此时为按下按钮,但是木有离开按钮
3、Disabled:按钮不可用(大概是睡着了)
4、Selected:按钮选中时
栗子代码:
<span ><span > </span>// 按钮状态 button.setTitlecolor(UIcolor.blackcolor(),forState: UIControlState.normal) button.setTitlecolor(UIcolor.bluecolor(),forState: UIControlState.Highlighted) button.setTitle("这时按钮无效",forState: UIControlState.Disabled) button.enabled = false</span>
按钮的类型:栗子:
<span ><span > </span>// 按钮的类型 let button2 = UIbutton(type: UIbuttonType.Detaildisclosure) button2.frame = CGRectMake(10,100,44) button2.setTitle("bello hello",forState: UIControlState.normal) self.vIEw.addSubvIEw(button2) let button3 = UIbutton(type: UIbuttonType.InfoDark) button3.frame = CGRectMake(10,150,44) button3.setTitle("bello hello",forState: UIControlState.normal) self.vIEw.addSubvIEw(button3) let button4 = UIbutton(type: UIbuttonType.ContactAdd) button4.frame = CGRectMake(10,200,44) button4.setTitle("bello hello",forState: UIControlState.normal) self.vIEw.addSubvIEw(button4)</span>效果是酱紫的:
还可以用图片给按钮设置背景:
方法名:setBackgroundImage
这种方式下图片会被拉伸以适应按钮
********************************
方法名:backgroundcolor
这种方式为图片的平铺
********************************
方法名:setimage
这种方式为图片的居中显示
在项目中使用图片,需要先将图片导入到工程中,然后在代码中加载图片,加载图片有两种方式:
1、UIImage(contentsOffile:图片路径)
2、UIImage(named:"图片名称")
第一种方式加载的图片不会一直保留在程序运行的活跃内存中,多用来加载大图
第二种方式加载的图片会一直留在内存中,多用于加载常用的小图标
如果使用UIbutton.System类型创建一个按钮,设置按钮图片时,图片会被纯色代替
<span > var img = UIImage(named: "1") img = img!.imageWithRenderingMode(UIImageRenderingMode.AlwaysOriginal)</span>
以上是解决办法。
按钮事件类型:
常用的按钮能够响应的事件类型如下:
touchDown:在按钮范围内按下
touchDownRepeat:在按钮上连按两下
touchDragInsIDe:在按钮响应范围内滑动
touchDragOutsIDe:在按钮响应范围之外滑动(滑动的起点在按钮的外围内)
touchdragenter:从按钮的响应范围内滑出按钮,再次进入按钮的响应范围
touchDragExit:从按钮的响应范围内滑出按钮
touchUpInsIDe:在按钮的响应范围内抬起手指
touchUpOutsIDe:在按钮的响应范围外抬起手指
如上所有的响应事件类型想要触发都有一个前提,那就是能够被响应,即手指对于按钮的起始作用点一定是要在按钮的响应范围内
呼呼,按钮的东西好多,毕竟是一个很重要的控件~下面来说UITextVIEw
单行文本框~
应用场景也很多,比如,登录注册的页面,输入用户名和密码的地方~就是它,是它是它就是它~
默认状态下,输入框的背景是透明的,而且木有边框,所以有时候我们看不到它~
说句题外话,包括做前端什么的时候,经常有那种,诶?代码明明有的啊,怎么木有 出现?调试一下就会发现,原来只是因为这家伙是透明的。。。所以,写代码的各位要细心~
言归正传了~
<span > let tf = UITextFIEld(frame: CGRectMake(10,44)) // 边框,背景,字体颜色,字体,边框的设置 tf.borderStyle = UITextborderStyle.Bezel tf.backgroundcolor = UIcolor.lightGraycolor() tf.textcolor = UIcolor.bluecolor() tf.Font = UIFont(name: "Zapfino",size: 10) tf.borderStyle = UITextborderStyle.RoundedRect // 提示字符 tf.placeholder = "兔几喜欢fu萝卜" // 密码输入框,输入的密码会自动变成点点,不是坏掉了~ tf.secureTextEntry = true // 对齐方式 tf.contentVerticalAlignment = .top tf.textAlignment = NSTextAlignment.left // 成为第一响应者,这时候,界面一出现,光标就被定位在该输入框中 tf.becomeFirstResponder() // 取消第一响应者 tf.resignFirstResponder() // 可以使用如下方法使得一个视图内所有的输入框都失去第一响应者 self.vIEw.endEditing(true) // 文字的清除模式,在输入框输入的时候,右侧可以显示一个清除按钮 tf.clearbuttonMode = UITextFIEldviewmode.WhileEditing//只有当输入框处于第一响应者时才显示 tf.clearbuttonMode = UITextFIEldviewmode.UnlessEditing//只有当输入框处于第一响应者的时候隐藏 self.vIEw.addSubvIEw(tf)</span>
如上是UITextVIEw的常用属性~
另外,在使用输入框的时候,需要对键盘进行个性化设置,可以设置成英文,或者数字模式等等,如下是键盘风格的定义代码:
<span >public enum UIKeyboardType : Int { case Default // Default type for the current input method. case ASCIICapable // displays a keyboard which can enter ASCII characters,non-ASCII keyboards remain active case NumbersAndPunctuation // Numbers and assorted punctuation. case URL // A type optimized for URL entry (shows . / .com prominently). case NumberPad // A number pad (0-9). Suitable for PIN entry. case PhonePad // A phone pad (1-9,*,#,with letters under the numbers). case namePhonePad // A type optimized for entering a person's name or phone number. case EmailAddress // A type optimized for multiple email address entry (shows space @ . prominently). @available(iOS 4.1,*) case DecimalPad // A number pad with a decimal point. @available(iOS 5.0,*) case Twitter // A type optimized for twitter text entry (easy access to @ #) @available(iOS 7.0,*) case WebSearch // A default keyboard type with URL-orIEnted addition (shows space . prominently). public static var Alphabet: UIKeyboardType { get } // Deprecated}</span>使用方式如下:
<span > tf.keyboardType = UIKeyboardType.EmailAddress</span>
另外,如果需要监控输入的内容,则需要使用UITextVIEw的代理方法来实现(UITextFeildDelegate)
<span > tf.delegate = self</span>呼呼~这一篇差不多了,作为一只兔子要去蹦跶一会儿了~ 总结
以上是内存溢出为你收集整理的swift基础篇:iOS控件大拌菜:UILable UIButton UITextView全部内容,希望文章能够帮你解决swift基础篇:iOS控件大拌菜:UILable UIButton UITextView所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)