此文学习来源为: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

IOS开发之XCode学习011:UISwitch控件的更多相关文章

  1. IOS开发之XCode学习013:步进器和分栏控件

    此文学习来源为:http://study.163.com/course/introduction/1002858003.htm 此工程文件实现功能:  1.定义UIStepper和UISegmente ...

  2. IOS开发之XCode学习014:警告对话框和等待提示器

    此文学习来源为:http://study.163.com/course/introduction/1002858003.htm 此工程文件实现功能:  1.警告对话框和等待提示器的概念 2.警告对话框 ...

  3. IOS开发之XCode学习009:UIViewController使用

    此文学习来源为:http://study.163.com/course/introduction/1002858003.htm 此工程文件实现功能: 通过点击屏幕事件,调用ViewController ...

  4. IOS开发之XCode学习008:UIViewController基础

    此文学习来源为:http://study.163.com/course/introduction/1002858003.htm 红色框选部分用A代替,AppDelegate类在程序框架启动时,如果在i ...

  5. IOS开发之XCode学习007:UIWindow对象

    此文学习来源为:http://study.163.com/course/introduction/1002858003.htm #import "AppDelegate.h" @i ...

  6. IOS开发之XCode学习012:Slider和ProgressView

    此文学习来源为:http://study.163.com/course/introduction/1002858003.htm 此工程文件实现功能:  1.定义UISlider和UIProgressV ...

  7. IOS开发之XCode学习010:定时器和视图对象

    此文学习来源为:http://study.163.com/course/introduction/1002858003.htm 此工程文件实现功能: 1.通过点击"启动定时器"按钮 ...

  8. iOS开发之Xcode常用调试技巧总结

    转载自:iOS开发之Xcode常用调试技巧总结 最近在面试,面试过程中问到了一些Xcode常用的调试技巧问题.平常开发过程中用的还挺顺手的,但你要突然让我说,确实一脸懵逼.Debug的技巧很多,比如最 ...

  9. 李洪强iOS开发之Xcode快捷键

    14个Xcode中常用的快捷键操作   在Xcode 6中有许多快捷键的设定可以使得你的编程工作更为高效,对于在代码文件中快速导航.定位Bug以及新增应用特性都是极有效的. 当然,你戳进这篇文章的目的 ...

随机推荐

  1. 700名黑客无法攻破Trillium安全防护软件 欲以网络安全险获利

    盖世汽车讯 据外媒报道,在2017 DEF CON黑客大会上,黑客们受邀入侵Car Hacking Village会场内的各类自动驾驶车辆.物联网网络安全公司--Trillium Incorporat ...

  2. UOJ#77. A+B Problem [可持久化线段树优化建边 最小割]

    UOJ#77. A+B Problem 题意:自己看 接触过线段树优化建图后思路不难想,细节要处理好 乱建图无果后想到最小割 白色和黑色只能选一个,割掉一个就行了 之前选白色必须额外割掉一个p[i], ...

  3. Bootstrap+Vue.js 练习入门一

    一. 效果如下图所示,输入用户名和年龄,点击添加,数据会自动添加到下面的用户信息表内.当没有数据时,用户信息表显示:暂无数据……,当有数据时,显示 删除全部 按钮,这里为了方便快捷,我没有做删除按钮的 ...

  4. Visual Studio 2017 for Mac 连接Git的奇怪问题

    VS for Mac连接Git的时候遇到个奇怪的问题, 无法将已存在的解决方案绑定并提交到GitHub中去. VS版本7.3.3 问题复现 以为自己操作有问题, 新建项目测试一下, 新建的时候没有勾选 ...

  5. Zabbix的网络发现

      Zabbix的网络发现 Zabbix的网络发现功能,可以让我们发现网络中的主机或者服务,并在发现该设备后做出相应的操作; 它可以用HTTP.ICMP.SSH.LDAP.TCP.SNMP.Telne ...

  6. Jmeter_上传与下载

    今天重点说一下Jmeter的上传与下载 1:Jmeter上传文件 首先确认你的文件名称,参数名称,MIME类型,这些可以从接口文档里面获取,或者直接在页面抓包然后从请求头里面查看.注意,此处我的文件路 ...

  7. cocos2d-x中处理touch事件

    在cocos2d-x中, touch事件分为两种:一种是单点事件, 另一种是多点事件. 单点事件对应的代理方法是: virtual bool ccTouchBegan(CCTouch *pTouch, ...

  8. JavaScript 中的对象深度复制(Object Deep Clone)

    JavaScript中并没有直接提供对象复制(Object Clone)的方法. JavaScript中的赋值,其实并不是复制对象,而是类似`c/c++`中的引用(或指针),因此下面的代码中改变对象b ...

  9. centos7下安装vsftpd

    安装步骤: 创建ftp目录 cd / mkdir ftpfile 创建指定登陆用户并不让他拥有登陆系统的权限(设置指定登陆shell) useradd ftpuser -d /ftpfile/ -s ...

  10. com.mysql.jdbc.Driver和com.mysql.cj.jdbc.Driver的区别

    概述:com.mysql.jdbc.Driver是mysql-connector-java 5中的,而com.mysql.cj.jdbc.Driver是mysql-connector-java 6中的 ...