IOS开发之XCode学习011:UISwitch控件

时间:2021-03-02 17:20:58

此文学习来源为:http://study.163.com/course/introduction/1002858003.htm

此工程文件实现功能:

 1、定义UIswitch控件,添加UIswitch控件属性

2、设置开关的基本属性,如颜色

3、向开关添加事件函数

===========================ViewController.h脚本==============================

#import <UIKit/UIKit.h>

@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的值可以改变

//宽度和高度值无法改变,80、40为无效值

_mySwitch.frame = CGRectMake(100, 100, 80, 40);

//_mySwitch.backgroundColor = [UIColor blueColor];

//开关状态设置属性

//YES:开启状态

//NO:关闭状态

_mySwitch.on = YES;

//也可以使用set函数

[_mySwitch setOn:YES];

//设置开关状态

//P1:状态设置

//P2:是否开启动画效果

[_mySwitch setOn:YES animated:YES];

[self.view addSubview:_mySwitch];

//设置开启状态的风格颜色

[_mySwitch setOnTintColor:[UIColor redColor]];

//设置开关圆按钮的风格颜色

[_mySwitch setThumbTintColor:[UIColor greenColor]];

[_mySwitch setTintColor:[UIColor purpleColor]];

//向开关控件添加事件函数

//P1:函数实现对象

//P2:函数对象

//P3:事件响应时的事件类型UIControlEventValueChanged:状态发生变化时触发函数

[_mySwitch addTarget:self action:@selector(swChange:) forControlEvents:UIControlEventValueChanged];

//    self.view.backgroundColor = [UIColor blueColor];

}

//参数传入开关对象本身

-(void)swChange:(UISwitch*) sw

{

//on表示当前结束的状态

//OC里没有直接输出BOOL类型值的方法,可以借助三目运算符实现

NSLog(@"开关状态发生变化!,开关状态为 = %@",sw.on ? @"打开" : @"关闭");

//    if (sw.on == YES) {

//        NSLog(@"开关被打开");

//    }

//    else

//    {

//        NSLog(@"开关被关闭");

//    }

}

- (void)didReceiveMemoryWarning {

[super didReceiveMemoryWarning];

// Dispose of any resources that can be recreated.

}

@end

学习总结:

  • 重点:UISwitch控件的属性
  • 难点:UISwitch控件的使用

源码链接地址:https://pan.baidu.com/s/1yrOLXZZeu9MiOWtMq5-EGA  密码:7t1l