Swift - 按钮(UIButton)的用法

1,按钮的创建

(1)按钮有下面四种类型:

UIButtonType.ContactAdd:前面带“+”图标按钮,默认文字颜色为蓝色,有触摸时的高亮效果

UIButtonType.DetailDisclosure:前面带“!”图标按钮,默认文字颜色为蓝色,有触摸时的高亮效果

UIButtonType.System:前面不带图标,默认文字颜色为蓝色,有触摸时的高亮效果

UIButtonType.Custom:定制按钮,前面不带图标,默认文字颜色为白色,无触摸时的高亮效果

UIButtonType.InfoDark:为感叹号“!”圆形按钮

UIButtonType.InfoLight:为感叹号“!”圆形按钮


1

2

3

4

5

6

7

//创建一个ContactAdd类型的按钮

var button:UIButton = UIButton.buttonWithType(UIButtonType.ContactAdd) as UIButton;

//设置按钮位置和大小

button.frame=CGRectMake(10, 150, 100, 30);

//设置按钮文字

button.setTitle("按钮", forState:UIControlState.Normal)

self.view.addSubview(button);

(2)对于Custom定制类型按钮,代码可简化为:


1

var button = UIButton(frame:CGRectMake(10, 150, 100, 30))

2,按钮的文字设置


1

2

3

button.setTitle("普通状态", forState:UIControlState.Normal) //普通状态下的文字

button.setTitle("触摸状态", forState:UIControlState.Highlighted) //触摸状态下的文字

button.setTitle("禁用状态", forState:UIControlState.Disabled) //禁用状态下的文字

3,按钮文字颜色的设置


1

2

3

button.setTitleColor(UIColor.blackColor(),forState: .Normal) //普通状态下文字的颜色

button.setTitleColor(UIColor.greenColor(),forState: .Highlighted) //触摸状态下文字的颜色

button.setTitleColor(UIColor.grayColor(),forState: .Disabled) //禁用状态下文字的颜色

4,按钮文字阴影颜色的设置


1

2

3

button.setTitleShadowColor(UIColor.greenColor(),forState:.Normal) //普通状态下文字阴影的颜色

button.setTitleShadowColor(UIColor.yellowColor(),forState:.Highlighted) //普通状态下文字阴影的颜色

button.setTitleShadowColor(UIColor.grayColor(),forState:.Disabled) //普通状态下文字阴影的颜色

5,按钮背景颜色设置


1

button.backgroundColor=UIColor.blackColor()

6,按钮文字图标的设置


1

2

3

button.setImage(UIImage(named:"icon1"),forState:.Normal//设置图标

button.adjustsImageWhenHighlighted=false //使触摸模式下按钮也不会变暗

button.adjustsImageWhenDisabled=false //使禁用模式下按钮也不会变暗

7,设置按钮背景图片


1

button.setBackgroundImage(UIImage(named:"background1"),forState:.Normal)

8,按钮触摸点击事件响应


1

2

3

4

5

6

7

8

9

10

11

//不传递触摸对象(即点击的按钮)

button.addTarget(self,action:Selector("tapped"),forControlEvents:UIControlEvents.TouchUpInside)

func tapped(){

   println("tapped")

}

//传递触摸对象(即点击的按钮),需要在定义action参数时,方法名称后面带上冒号

button.addTarget(self,action:Selector("tapped:"),forControlEvents:UIControlEvents.TouchUpInside)

func tapped(button:UIButton){

   println(button.titleForState(.Normal))

}

常用的触摸事件类型:

TouchDown:单点触摸按下事件,点触屏幕

TouchDownRepeat:多点触摸按下事件,点触计数大于1,按下第2、3或第4根手指的时候

TouchDragInside:触摸在控件内拖动时

TouchDragOutside:触摸在控件外拖动时

TouchDragEnter:触摸从控件之外拖动到内部时

TouchDragExit:触摸从控件内部拖动到外部时

TouchUpInside:在控件之内触摸并抬起事件

TouchUpOutside:在控件之外触摸抬起事件

TouchCancel:触摸取消事件,即一次触摸因为放上太多手指而被取消,或者电话打断

时间: 2024-10-11 04:54:27

Swift - 按钮(UIButton)的用法的相关文章

UIButton基本用法

UIButton(基本用法)Tsummer //初始化button,选择button类型 UIButton *tbutton = [UIButton buttonWithType:UIButtonTypeCustom]; //给定button在view上的位置 tbutton.frame = CGRectMake(20, 20, 280, 20); //设置button填充图片 [tbuttonsetImage:[UIImageimageNamed:@"Tsummer.png"]for

UIButton UIImage 用法分析

UIButton UIImage 用法分析 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 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 一.UIButton和UIImageView的区别 1.显示图片 1> UIImageView只能显示一种图片(图片默认会填充整个UIImageView)  im

Swift—UITextField的基本用法

https://www.jianshu.com/p/63bdeca39ddf 1.文本输入框的创建##### let textField = UITextField(frame: CGRect(x:10, y:60, width:200, height:30)) // let textField = UITextField() // textField.frame = CGRect(x:20,y:30,width:100,height:30) //设置边框样式为圆角矩形 textField.bo

SWIFT Button的基本用法

import UIKit @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate { var window: UIWindow? func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { self.window = UI

Swift重写UIButton的图片和标题的位置

import UIKit class ResetBtn: UIButton { let IMAGE_RATIO :CGFloat = 0.7 // 图片占整个按钮高度的比例 let TITLE_FONT:CGFloat = 13 // 设置按钮标题字体默认的大小 override init(frame: CGRect) { super.init(frame: frame) self.setImageAndTitle() } required init?(coder aDecoder: NSCod

iOS上如何让按钮(UIbutton)文本左对齐展示

// button.titleLabel.textAlignment = NSTextAlignmentLeft; 这句无效 button.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft; button.titleEdgeInsets = UIEdgeInsetsMake(0, 10, 0, 0); 在做UI界面的时候一直困惑与如何让button的文字左对齐展示,今天重新遇到.决定彻底解决问题 首先我们会想

IOS之UI -- 按钮UIButton的细节

*:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } a { color: #4183C4; } a.absent { color: #cc0000; } a.anchor { display: block; padding-left: 30px; margin-left: -30px; cursor: pointer; position: absolute

SWIFT UITableView的基本用法

import UIKit @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate { var window: UIWindow? func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { self.window = UI

iOS中的按钮(UIButton)

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease]; // Override point for customization after appl