文档章节

iOS UISwitch用法和示例

yuiwong
 yuiwong
发布于 2015/10/05 16:40
字数 496
阅读 489
收藏 1

iOS UISwitch用法和示例 (class UISwitch (swift))

动态创建UISwitch (代码中创建) E.X.

  • Xcode 7.0.1 + Swift 2.1

  • 3 步

1 在自己继承于UIViewController的VC中 例如在viewDidLoad

E.X.

override func viewDidLoad() {
	super.viewDidLoad()

	var c = CGPointMake(100.0, 64.0)
	self.savedUISwt = self.createUISwitch(centerAt: c, dftOn: true,
		onSwtChangeSelector: "onSwtChange:")

	c = CGPointMake(100.0, 128.0)
	self.savedUISwt2 = self.createUISwitch(centerAt: c, dftOn: false,
		onSwtChangeSelector: "onSwtChange2")

	self.view.addSubview(self.savedUISwt!)
	self.view.addSubview(self.savedUISwt2!)
}

2 实现方法createUISwitch

E.X.

/*
 * NAME createUISwitch - limited func to createUISwitch
 *
 * NOTE
 *   - only HERE (the VC use it -- selector)
 *   - UISwitch is a class -- to return is Nice (other all func local)
 */
private func createUISwitch (
	centerAt c: CGPoint,
	dftOn o: Bool,
	onSwtChangeSelector onSwtC: String) -> UISwitch {

	let swt = UISwitch()

	/* 设置位置 but size fixed !! */
	swt.center = c;

	/* swt.frame = CGRectMake(c.x, c.y, w, h) */

	/* 设置默认值 */
	swt.on = o;

	/* on switch (on/off) change */
	swt.addTarget(self, action: Selector(onSwtC),
		forControlEvents: UIControlEvents.ValueChanged)

	return swt
}

3 状态改变"回调" (Selector)实现

  • 有参数的更好点

  • E.X.

      @IBAction private func onSwtChange (let sender: UISwitch) {
      	if let s = self.savedUISwt {
      		if (sender == s) {
      			print(__LINE__, "my swt on: \(sender.on)")
      		}
      	}
      }
    
    
      @IBAction private func onSwtChange2 () {
      	if let s = self.savedUISwt2 {
      		print(__LINE__, "my swt2 on: \(s.on)")
      	}
      }
    

init

  • Designated Initializer

  • NOTE: SIZE fixed !!

Returns

  • an initialized switch object.

Declaration

Swift

init(frame frame: CGRect)

Setting the Off/On State

on

  • A Boolean value that determines the off/on state of the switch

Declaration

Swift

var on: Bool

Discussion

  • This property allows you to retrieve and set (without animation) a value determining whether the UISwitch object is on or off.

Availability

  • Available in iOS 2.0 and later.

setOn

  • Set the state of the switch to On or Off optionally animating the transition.

Declaration

Swift

func setOn(_ on: Bool,
	animated animated: Bool)

Parameters

  • on

V

true
if the switch should be turned to the On position

V

false
if it should be turned to the Off position.
If the switch is already in the designated position, nothing happens.
  • animated

V

true
to animate the “flipping” of the switch
otherwise false.

Discussion

  • Setting the switch to either position does not result in an action message being sent.

Availability

  • Available in iOS 2.0 and later.

Customizing the Appearance of the Switch

onTintColor
tintColor
thumbTintColor
onImage
offImage

Inherits From

NSObject

UIResponder

UIView

UIControl

UISwitch

Document Revision History

  • This table describes the changes to UISwitch Class Reference.

    • 2013-09-18 Updated for iOS 7.

    • 2012-09-19 Added new methods introduced in iOS 6.

    • 2011-10-12 Updated for iOS 5.

    • 2010-04-06 Fixed a typo.

    • 2008-04-18 New document that describes the class for creating and managing the On/Off buttons known as switches

Ref

UISwitch Class Reference(developer.apple.com)

© 著作权归作者所有

上一篇: iOS手势操作(Swift)
下一篇: Swift 线程
yuiwong
粉丝 0
博文 5
码字总数 2283
作品 0
深圳
高级程序员
私信 提问
IOS代码实现常用控件UIButton、UISlider、UISwitch、UISegmentedControl

IOS中最常用到的控件UIButton、UISlider、UISwitch、UISegmentedControl通过Xib文件拖动生成非常简单,其实用代码实现也是一样的简单,当然,用代码实现能够掌握到更多的东西。 上图中包涵提...

长平狐
2012/10/25
635
0
iOS UISwitch 用法总结

iOS 系统开关控件简单使用总结: 初始化: - (instancetype)initWithFrame:(CGRect)frame; 这个frame是没有意义的,系统的开关控件大小是确定的。 设置开关开启状态时的颜色 @property(nona...

珲少
2015/04/15
7.6K
0
iOS 5 编程(2)-开关(UISwitch)、分段控件(UISegmentedControl)和

本范例iOS App演示了如下控件的使用,从第三方网站获取特定URL的Web内容,并显示在UIWebView控件中。 开关(UISwitch) 分段控件(UISegmentedControl) Web视图(UIWebView) 该范例 iPhone App运...

mickelfeng
2014/05/02
50
0
[C++][IO]fstream用法

fstream用法 1. 打开文件 在fstream类中,有一个成员函数open(),就是用来打开文件的,其原型是: void open(const char* filename,int mode,int access); 参数: filename:  要打开的文件...

guitar_zp
2011/08/09
0
0
【AR】开始使用Vuforia开发iOS(2)

原 设置iOS开发环境 安装Vuforia iOS SDK 如何安装Vuforia iOS示例 编译并运行Vuforia iOS示例 支持iOS金属 iOS 64位迁移 设置iOS开发环境 适用于iOS的Vuforia引擎目前支持运行iOS 9及更高版...

lichong951
2018/06/11
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Vue warn]: Computed property "activeNames" was assigned to but it has no setter.

在使用 vue,element-ui时,如下代码 <template> <el-form :model="numberValidateForm" ref="numberValidateForm"> <el-form-item> <el-tabs v-model="activeNames" @tab-cl......

牧云橙
20分钟前
2
0
重构-改善既有代码的设计-6.2内联函数

6.2内联函数 动机 本书经常以简短的函数表现动作意图,这样会使代码更清晰易读。但有时候你会遇到某些函数,其内部代码和函数名称同样清晰易读。也可能你充够了该函数的内部实现,使其内容和...

还仙
21分钟前
4
0
Less 混入

混合类似于编程语言中的函数。 Mixins 是一组CSS属性,允许我们将一个类的属性嵌套于另一个类,被嵌入的类可以看作是变量,并且包含类名作为其属性,也就是说我们可以用一个类定义样式然后把...

凌兮洛
23分钟前
4
0
频繁FGC的真凶原来是它

频繁FGC的真凶原来是它 上周排查了一个线上问题,主要现象是CPU占用过高,jvm old区占用过高,同时频繁fgc,我简单排查了下就草草收场了,但是过后我对这个问题又进行了复查,发现问题没有那...

每天晒白牙
24分钟前
4
0
简单的树形菜单如何写

业务需求 数据结构中含有图片、名称、children的树形结构,需要展示出每一级的图片名称和图片,找了些树形图的插件,都没有展示大的图片的,一般都是小图标,就自己试着写一个包含图的简单的...

tianyawhl
26分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部