UIControl及其子类

UISegmentedControl的用法

UISegmentedControl是iOS中得分段控件,每个segment都能被点击,相当于集成了若干个button.通常我们会点击不同的segment来切换不同的view

常用方法

initWithItems: //UISegmentedControl独有的初始化方法,⽤用来创建多个分段

setTitle: forSegmentAtIndex: //为指定下标的分段设置title

setImage: forSegmentAtIndex: //为指定下标的分段设置image insertSegmentWithTitle:

atIndex:animated: //指定下标插入分段 

- (void)viewDidLoad
{
[super viewDidLoad];
UIImage *image = [UIImage imageNamed:@"3005.png"];
NSArray *arr = @[@"分组",@"全部",@"推荐",@"共享",image];
UISegmentedControl *segmentcontrol = [[UISegmentedControl alloc] initWithItems:arr];
segmentcontrol.frame = CGRectMake(, , , );
[segmentcontrol addTarget:self action:@selector(choose:) forControlEvents:UIControlEventValueChanged];
segmentcontrol.selectedSegmentIndex = ;//开始的时候就选中一个下标
[self.view addSubview:segmentcontrol];
[segmentcontrol release];

UISlider概述

UISlider是iOS中的滑块控件,通常用于控制视频播放进度,控制音量等,它也是继承于UIControl,滑块提

供了⼀系列连续的值,滑块停 在不同的位置,获取到滑块上的值也不同。

常用属性

minimumValue //设置滑块的最⼩小值

maximumValue //设置滑块的最⼤大值

value //设置滑块的当前值

addTarget: action: forControlEvents: 给UISlider添加事件, controlEvent为UIControlEventValueChanged。

UIImageView的使用

- (void)speed:(UISlider *)slider
{
UIImageView *imgv = (UIImageView *)[self.view viewWithTag:];
[imgv stopAnimating];
imgv.animationDuration = slider.value;
[imgv startAnimating];
}
- (void)viewDidLoad
{
[super viewDidLoad]; UIImageView *imageview = [[UIImageView alloc] initWithFrame:CGRectMake(, , , )];
imageview.backgroundColor = [UIColor orangeColor];
NSMutableArray *images = [NSMutableArray arrayWithCapacity:];
for (int i = ; i <= ; i++) {
NSString *imagename = [NSString stringWithFormat:@"I]WXR8([Y]TFLAECY8EO2%%2-%d(被拖移).tiff",i];
UIImage *image = [UIImage imageNamed:imagename];
[images addObject:image];
}
imageview.animationImages = images;
imageview.animationDuration = ;//动画播几次要用多长时间
// imageview.animationRepeatCount = -1;
[imageview startAnimating];
[self.view addSubview:imageview];
imageview.tag = ;
[imageview release]; UISlider *slider = [[UISlider alloc] initWithFrame:CGRectMake(, , , )];
[self.view addSubview:slider];
[slider addTarget:self action:@selector(speed:) forControlEvents:UIControlEventValueChanged];
[slider release];
}

image //设置图⽚片

animationImages //设置一组动态图片

animationDuration //设置播放一次一组动态图片的时间

animationRepeatCount //设置重复次数

startAnimating //开始动画

stopAnimating //结束动画

UIControl的作用

UIControl是所有控制控件(比如UIButton  UISlider  UISegmentedControl等)的基类,只要跟控制有关的控件都是继承于该类

UIControl的核心功能是可以为控制控件通过addTarget:action:forControlEvents:方法来添加事件.也可以通过removeTarget:action:forControlEvents:来移除事件

UI学习笔记---第六天的更多相关文章

  1. 《JavaScript权威指南》学习笔记 第六天 开始学习DOM了。

    昨天学习了window对象的一些方法.window对象主要是针对当前视窗的操作.window对象提供了一些列API来帮助我们了解当前窗口的信息.例如history对象可以让我们获取浏览历史.nvaig ...

  2. Semantic ui 学习笔记 持续更新

    这个semantic 更新版本好快~ 首先是代码的标识<code></code> 具体样式就是红框这样的 圈起来代码感觉不错 不过要在semantic.css里在加上如下样式~ ...

  3. UI学习笔记---第十天UITableView表视图编辑

    UITableView表视图编辑 表视图编辑的使用场景 当我们需要手动添加或者删除某条数据到tableView中的时候,就可以使用tableView编辑.比如微信 扣扣中删除和某人的通话 当我们需要手 ...

  4. UI学习笔记---第二天

    程序的执行流程 一.自定义视图 自定义UILebal-UITextField视图 ⾃定义视图:系统标准UI之外,⾃己组合而出的新的视图. 实际开发中,我们还需⾃定义视图.积累⾃己的代码库.⽅便开发. ...

  5. UI学习笔记---第一天

    一.iOS概述 iOS是Apple公司的移动操作系统,主要⽤用于iPhone.iPad.iPad Mini.iPod Touch等移动产品. 借助iOS,我们可以开发视频类.美图类.新闻类.⾳乐类.团 ...

  6. 基于AngularJS的Onsen UI --Onsen UI学习笔记

    AngularJS与Onsen UI的结合,Onsen UI应用程序实际上是一个AngularJS 1应用程序. <!doctype html><html lang="en ...

  7. .Net Core,VUE,VS Code,Sql Sugar,Element UI学习笔记

    1..Net Core的目的是跨平台,并主要目标是作为服务端开发使用.从3.0开始,引入了Winfrom和WPF. 2..Net Core可以引用.Net Framework生成的dll和exe,不限 ...

  8. Amaze UI学习笔记——JS学习历程一

    1.自定义事件 (1)一些组件提供了自定义事件,命名方式为{事件名称}.{组件名称}.amui,用户可以查看组件文档了解.使用这些事件,如: $('#myAlert').on('close.alert ...

  9. mysql学习笔记 第六天

    改变数据表的结构: alter table tb_name action,[action,action](使用alter table 之前,需要查看数据表的当前定义,需要执行show create t ...

随机推荐

  1. Python Twisted介绍

    原文链接:http://www.aosabook.org/en/twisted.html 作者:Jessica McKellar Twisted是用Python实现的基于事件驱动的网络引擎框架.Twi ...

  2. Jmeter java.lang.OutOfMemoryError: GC overhead limit exceeded

    使用这个jmeter工具测试时,遇到这么个gc错误,网上找到了解决方案.原因是jmeter默认分配内存的参数很小,好像是256M吧.故而解决方法,就是增加内存: set HEAP=-Xms4g -Xm ...

  3. 用PDB库调试Python程序

    Python自带的pdb库,发现用pdb来调试程序还是很方便的,当然了,什么远程调试,多线程之类,pdb是搞不定的. 用pdb调试有多种方式可选: 1. 命令行启动目标程序,加上-m参数,这样调用my ...

  4. Zabbix源码包安装

    Zabbix源码包安装 Cenos5.3 Basic server 安装顺序 Libxml2 Libmcrypt Zlib Libpng Jpeg:需要创建目录jpeg  /bin  /lib   / ...

  5. 文件浏览器及数码相框 -2.3.2-freetype_arm-2

    显示多行文字 两行文字左边对齐 简单使用两个循环显示两行字体 根据上一行字体的宽度来进行下一行左边的计算 #include <sys/mman.h> #include <sys/ty ...

  6. 纯JS省市区三级联动

    代码下载

  7. Linux 常用

    1,解决ssh登录慢的问题记录 vim /etc/ssh/ssh_config    #   GSSAPIAuthentication no  把下面这一行的注释去掉 2,Linux查看当前是什么系统 ...

  8. [转] lib和dll 区别,生成及使用方法

    lib 和 dll 的区别.生成以及使用详解 [目录] lib dll介绍 生成动态库 调用动态库 生成静态库 调用静态库 首先介绍一下静态库(静态链接库).动态库(动态链接库)的概念,首先两者都是代 ...

  9. [网络技术]网关 路由器 OSI

    tracert 1.网关与路由 关键的区别:网关是这样一个网络节点:以两个不同协议搭建的网络可以通过它进行通信.路由器是这样一种设备:它能在计算机网络间收发数据包,同时创建一个覆盖网络(overlay ...

  10. 10 件在 PHP 7 中不要做的事情

    1. 不要使用mysql_函数 这一天终于来了,从此你不仅仅"不应该"使用mysql_函数.PHP 7 已经把它们从核心中全部移除了,也就是说你需要迁移到好得多的mysqli_函数 ...