欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

iOS开发从入门到精通--开关按钮UISwitch控件

程序员文章站 2022-04-22 10:16:02
开关按钮UISwitch 在ViewController.h里面 #import @interface ViewController : UIViewControl...

开关按钮UISwitch
在ViewController.h里面

#import 

@interface ViewController : UIViewController{

    //定义一个开关控件
    //作用可以进行状态的改变
    //开,关:两种状态可以切换
    //所有UIKit框架库中的控件均已UI开头
    //苹果官方的控件都定义在UIKit框架库中
    UISwitch * _mySwitch;

}

@property(retain,nonatomic) UISwitch * mySwitch;


@end

在ViewController.m里面

#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController
@synthesize mySwitch=_mySwitch;

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.

    //创建一个开关对象
    //继承于UIView的
    _mySwitch = [[UISwitch alloc]init];

    //苹果官方的控件的位置设置
    //位置X,Y的值可以改变(100,100)
    //宽度和高度值无法改变(80,40)写了也没有用的,不会起到作用的。默认的。
    _mySwitch.frame=CGRectMake(100, 200, 180, 40);

    //开关状态设置属性
    //YES:开启状态
    //NO:关闭状态
    _mySwitch.on=YES;

    //也可以使用set函数
    //[_mySwitch setOn:YES];

    //设置开关状态
    //p1:状态设置
    //p2:是否开启动画效果
    //[_mySwitch setOn:YES animated:YES];

    [self.view addSubview:_mySwitch];

    //设置开启状态的风格颜色
    [_mySwitch setOnTintColor:[UIColor orangeColor]];

    //设置开关圆按钮的风格颜色
    [_mySwitch setThumbTintColor:[UIColor blueColor]];

    //设置整体风格颜色,按钮的白色是整个父布局的背景颜色
    [_mySwitch setTintColor:[UIColor greenColor]];

    //向开关控件添加事件函数
    //p1:函数实现对象
    //p2:函数对象
    //p3:事件响应时的事件类型UIControlEventValueChanged状态发生变化时触发函数
    [_mySwitch addTarget:self action:@selector(swChange:) forControlEvents:UIControlEventValueChanged];


}

//参数传入开关对象本身
- (void) swChange:(UISwitch*) sw{

    if(sw.on==YES){
        NSLog(@"开关被打开");
    }else{
        NSLog(@"开关被关闭");
    }
}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end