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. JS点击复制

    <!DOCTYPE html><html><head> <script type="text/javascript"> functi ...

  2. Fair Photography

    题目大意: 给出直线上N个点的位置和颜色(0或1),求最大的区间,使得区间内0的个数大于等于1的个数且0的个数减去1的个数为偶数. 解题过程: 1.先贴个lsdsjy大牛的线段树的做法:http:// ...

  3. c# 配置文件之configSections配置

    对于小型项目来说,配置信息可以通过appSettings进行配置,而如果配置信息太多,appSettings显得有些乱,而且在开发人员调用时,也不够友好,节点名称很容易写错,这时,我们有几种解决方案 ...

  4. libpng交叉编译安装

    tar xzf libpng-1.5.22.tar.gz cd libpng-1.5.22 mkdir tmp 打开Makefile文件并修改CC=arm-linux-gcc ./configure ...

  5. Web体系=资源+URI+表示

    概述 Web有三个核心概念:资源(Resource).URI(UniformResource Identifer,统一资源标识符).表示(Representation).一个资源由一个URI进行标识. ...

  6. println与toString()

      public class Test{ public static void main(String[] args) { Mankind mk=new Mankind(); System.out.p ...

  7. 如何利用SVN合并代码

    一.  背景     平时在进行开发时,一般都会有多版本同时进行,包括项目版本.周版本.紧急版本等,当某一个版本具备上线条件后,需要在上一个已发布的版本基础上进行发布,才能够避免出现版本相互覆盖,因此 ...

  8. 获取hadoop的源码和通过eclipse关联hadoop的源码

    一.获取hadoop的源码 首先通过官网下载hadoop-2.5.2-src.tar.gz的软件包,下载好之后解压发现出现了一些错误,无法解压缩, 因此有部分源码我们无法解压 ,因此在这里我讲述一下如 ...

  9. 《JAVA笔记 day08 静态_单例》

    //static关键字: /* 静态方法的使用注意事项: 1,静态方法不能访问非静态的成员. 但是非静态是可以访问静态成员的. 说明:静态的弊端在于访问出现了局限性.好处是可以直接别类名调用. 2,静 ...

  10. 百度云加速时使用Cloudflare的技术

    百度云加速时使用Cloudflare的技术 引用“百度的关于我们”这是在打脸吗?就是把英文翻译过来换个验证码 百度是全球最大的中文搜索引擎.最大的中文网站.2000年1月创立于北京中关村.如今,百度已 ...