iOS 改变UISwitch大小的例子详解

UISwitch如果放置在一个UIView里,那么它就会根据父控件UIView固定好大小,不管你怎么设置UISwitch的frame都改变不了它的大小,解决的办法如下:

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view.
    
    self.view.backgroundColor = [UIColor grayColor];
    UIView *mainView = [[UIView alloc] initWithFrame:CGRectMake(0, 50, kScreenWidth, 30)];
    mainView.backgroundColor = [UIColor whiteColor];
    [self.view addSubview:mainView];
    
    UISwitch *nameSwitch = [[UISwitch alloc] initWithFrame:CGRectMake(kScreenWidth / 2.0, 0, 25, 15)];
    nameSwitch.on = YES;
    nameSwitch.transform = CGAffineTransformMakeScale(0.7, 0.6); //改变大小的关键代码
    [mainView addSubview:nameSwitch];
}

补充:

1.UISwitch的初始化

UISwitch *switchView = [[UISwitch alloc] initWithFrame:CGRectMake(54.0f, 16.0f, 100.0f, 28.0f)];
2.设置UISwitch的初始化状态

switchView.on = YES;//设置初始为ON的一边
 3.UISwitch事件的响应

[switchView addTarget:self action:@selector(switchAction:) forControlEvents:UIControlEventValueChanged];

时间: 2024-09-23 17:02:42

iOS 改变UISwitch大小的例子详解的相关文章

iOS之UIScrollview添加约束图文详解

iOS之UIScrollview添加约束图文详解 原文链接 http://www.jianshu.com/p/e4a12061776d 前言 在iOS开发中,autolayout是一个很强大的东西,用好了,能让你事半功倍,用不好,各种蛋疼.不过autolayout是很容易学的,笔者当时仅仅看了一个多小时的资料就轻松上手,相信比笔者厉害的大有人在. 不过无论多简单的东西,用起来总有不如意的地方,笔者曾经在UIScrollView的约束上折腾了很久,各种报错,各种查资料,终于在笔者不断的尝试下,找到

SQL SERVER分区具体例子详解

原文:SQL SERVER分区具体例子详解 在日常工作中,我们会遇到以下的情况,一个表每日数万级的增长,而查询的数据通常是在本月或今年,以前的数据偶尔会用到,但查询和插入的效率越来越慢,用数据库分区会有助于解决这个问题.关于分区的理论知识网上很多我这里就不在累赘,我从一个实际例子出发,看如何将一个已经运行了很长时间的普通表进行分区. 提出问题 需解决问题:有一个数据表数据很大,我们通常的查询是在一个季度中.我们需要将以往年份的数据按不同年份存在文件组里,当年的数据分为4个季度存,如果到了新的一年

C++使struct对象拥有可变大小的数组(详解)_C 语言

首先摘录<Inside The C++ Object Model>中的一段话: 把单一元素的数组放在一个struct的尾端,于是每个 struct objects 可以拥有可变大小的数组: struct mumble { char pc[1]; }; //获取一个字符串,然后为struct本身和该字符串配置足够的内存 struct mumble *pmumbl = (struct mumble*)malloc(sizeof(struct mumble) + strlen(string) + 1

Android中屏幕密度和图片大小的关系详解

Android中屏幕密度和图片大小的关系详解 前言 Android中支持许多资源,包括图片(Bitmap),对应于bitmap的文件夹是drawable,除了drawable,还有drawable-ldpi.drawable-mdpi.drawable-hdpi.drawable-xhdpi.drawable-xxhdpi等,同一张图片放到上面不同的文件夹中是有区别的,比如一张100 * 100像素大小的图片,分别放在上述各个文件夹中,然后将其设置为ImageView(假设宽高都是wrap_co

iOS开发之UIScrollView控件详解_IOS

一.UIScrollView控件是什么?     (1)移动设备的屏幕⼤大⼩小是极其有限的,因此直接展⽰示在⽤用户眼前的内容也相当有限     (2)当展⽰示的内容较多,超出⼀一个屏幕时,⽤用户可通过滚动⼿手势来查看屏幕以外的内容     (3)普通的UIView不具备滚动功能,不能显⽰示过多的内容     (4)UIScrollView是一个能够滚动的视图控件,可以⽤用来展⽰示⼤大量的内容,并且可以通过滚 动查看所有的内容     (5)  举例:手机上的"设置".其他⽰示例程序 二

Oracle expdp/impdp 用法例子 详解 举例 例子 他的这篇文章没有办法写出来 要这么改

 步骤:   导出端: 建立导出目录. grant create any directory to qbjmes;  create directory backup as '/tmp/backup'; grant read, write on directory backup to public;   导入端:  grant create any directory to qbjmes;  create directory backup as '/tmp/backup'; grant read,

IOS 陀螺仪开发(CoreMotion框架)实例详解_IOS

iOS陀螺仪 参数意义 self.mManager = [[CMMotionManager alloc]init]; self.mManager.deviceMotionUpdateInterval = 0.5; if (self.mManager.gyroAvailable) { [self.mManager startDeviceMotionUpdatesToQueue:[NSOperationQueue currentQueue] withHandler:^(CMDeviceMotion

IOS开发笔记整理49之详解定位CLLocation_IOS

在项目功能中有一个定位CLLocation的需求,遇到了一些知识难点,经过各位大侠的帮助,问题解决,特此分享供大家学习,希望大家共同学习进步. 一.简单说明 1.CLLocationManager CLLocationManager的常用操作和属性 开始用户定位- (void)startUpdatingLocation; 停止用户定位- (void) stopUpdatingLocation; 说明:当调用了startUpdatingLocation方法后,就开始不断地定位用户的位置,中途会频繁

ios入门之消息推送详解

前言 在去年的苹果大会上,苹果带来的iOS 10 系统中将之前繁杂的推送通知统一成UserNotifications.framework 来集中管理和使用通知功能,还增加一些实用的功能--撤回单条通知.更新已展示通知.中途修改通知内容.在通知中显示多媒体资源.自定义UI等功能. 那么在ios10之前,ios的消息推送是怎么分类的呢? ios 10之前 在ios之前,iOS推送分为Local Notifications(本地推送) 和 Remote Notifications(远程推送). 本地推