iOS开发-UI (一)常用控件
从这里开始是UI篇
知识点:
1.常用IOS基本控件
2.UITouch
=======================
常用基本控件
1.UISegmentedControl:分段控制器
1)创建方式
- (id)initWithItems:(NSArray *)items;
items数组中可以有NSString或者是UIImage对象
UISegmentedControl *seg = [[UISegmentedControl alloc] initWithItems:@[@"广州",@"深圳",@"珠海"]];
2)常用属性
设置标题/图片(注意下标范围从0~segments-1)
- (void)setTitle:(NSString *)title forSegmentAtIndex:(NSUInteger)segment - (void)setImage:(UIImage *)image forSegmentAtIndex:(NSUInteger)segment [seg setImage:[UIImage imageNamed:@"refresh_30"] forSegmentAtIndex:];
插入标题/图片
- (void)insertSegmentWithTitle:(NSString *)title atIndex:(NSUInteger)segment animated:(BOOL)animated - (void)insertSegmentWithImage:(UIImage *)image atIndex:(NSUInteger)segment animated:(BOOL)animated
//插入
[seg insertSegmentWithTitle:@"湛江" atIndex:3 animated:YES];
移除内容 - (void)removeSegmentAtIndex:(NSUInteger)segment animated:(BOOL)animated - (void)removeAllSegments //移除某一个分段 [seg removeSegmentAtIndex: animated:YES]; //移除所有分段 [seg removeAllSegments];
事件处理
- (void)addTarget:(id)target
action:(SEL)action
forControlEvents:(UIControlEvents)controlEvents
3)事件处理
UIControlEventValueChanged
//添加事件
//注意事件类型使用:UIControlEventValueChanged
[seg addTarget:self action:@selector(segAction:) forControlEvents:UIControlEventValueChanged];
2.UISlider:滑块
1)创建方式
2)常用属性
当前value
property(nonatomic) float value
//实例化一个UISlider
UISlider *slider = [[UISlider alloc] initWithFrame:CGRectMake(10, 80, 200, 100)];
//设置默认滑块的位置(默认是0 - 1范围)
slider.value = 0.5;
最小value
@property(nonatomic) float minimumValue
最大value
@property(nonatomic) float maximumValue
//修改最大最小值
slider.minimumValue = 10;
slider.maximumValue = 100;
3)定制UI
@property(nonatomic,retain) UIColor *minimumTrackTintColor @property(nonatomic,retain) UIColor *maximumTrackTintColor @property(nonatomic,retain) UIColor *thumbTintColor //添加事件 [slider addTarget:self action:@selector(sliderAction:) forControlEvents:UIControlEventValueChanged]; //设置左右颜色 slider.minimumTrackTintColor = [UIColor redColor]; slider.maximumTrackTintColor = [UIColor yellowColor]; slider.thumbTintColor = [UIColor purpleColor];
3.UISwitch:开关控件
1)创建方式
// 实例化一个UISwitch
UISwitch *swi = [[UISwitch alloc] initWithFrame:CGRectMake(30, 80, 10, 10)];
2)常用属性
@property(nonatomic, retain) UIColor *onTintColor
@property(nonatomic, retain) UIColor *thumbTintColor
@property(nonatomic,getter=isOn) BOOL on
//设置按键颜色
swi.thumbTintColor = [UIColor orangeColor];
//打开的颜色
swi.onTintColor = [UIColor purpleColor];
//设置开关状态
swi.on = NO;
3)事件处理
[swi addTarget:self action:@selector(swiAction:) forControlEvents:UIControlEventValueChanged];
4.UIActivityIndicatorView
1)创建方式
- (id)initWithActivityIndicatorStyle:(UIActivityIndicatorViewStyle)style
UIActivityIndicatorViewStyleWhiteLarge 大白色
UIActivityIndicatorViewStyleWhite 普通大小白
UIActivityIndicatorViewStyleGray 普通大小灰
// 加载视图
UIActivityIndicatorView *act = [[UIActivityIndicatorView alloc] initWithFrame:CGRectMake(30, 100, 200, 200)];
act.activityIndicatorViewStyle = UIActivityIndicatorViewStyleWhiteLarge;
2)常用属性
开始转动
- (void)startAnimating;
停止转动
- (void)stopAnimating;
是否正在转动
- (BOOL)isAnimating;
颜色
@property (readwrite, nonatomic, retain) UIColor *color
//设置颜色
act.color = [UIColor orangeColor];
//开启动画
[act startAnimating];
//停止动画
[act stopAnimating];
//设置停止动画依然显示
act.hidesWhenStopped = NO;
5.UIProgressView:进度条
1)创建方式
- (id)initWithProgressViewStyle:(UIProgressViewStyle)style
UIProgressView *pro = [[UIProgressView alloc] initWithFrame:CGRectMake(30, 100, 200, 30)];
2)常用属性
@property(nonatomic) float progress 当前进度
@property(nonatomic, retain) UIColor* trackTintColor
@property(nonatomic, retain) UIColor* progressTintColor
//默认的范围为0 - 1
//设置进度
pro.progress = 0.5;
//完成进度的颜色
pro.progressTintColor = [UIColor redColor];
//未完成进度的颜色
pro.trackTintColor = [UIColor greenColor];
练习:模仿进度读取状态
6.UIActionSheet
代理方法
//实例化一个UIActionSheet UIActionSheet *sheet = [[UIActionSheet alloc] initWithTitle:@"温馨提示" delegate:self cancelButtonTitle:@"取消" destructiveButtonTitle:@"吃饭" otherButtonTitles:@"逛街",@"打游戏", @"睡觉",nil]; //显示UIActionSheet [sheet showInView:self.view]; - (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex //点击回调代理方法 -(void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex{ NSLog(@"buttonIndex = %ld",buttonIndex); switch (buttonIndex) { case : { NSLog(@"吃饭"); } break; default: break; }
}
7.UIAlertView
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
//实例化一个UIAlertView
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"温馨提示" message:@"余额不足" delegate:self cancelButtonTitle:@"确定" otherButtonTitles:@"抢银行",@"搬砖",@"找个富婆", nil];
//展示
[alert show];
}
#pragma mark- UIAlertViewDelegate
-(void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex{
NSLog(@"buttonIndex = %ld",buttonIndex);
}
=======================
UITouch
1.如何捕捉触摸事件
触摸开始 - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event; 移动 - (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event; 触摸结束 - (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event; 触摸被取消(触摸时候程序被中断) - (void)touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event; -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{ //获得起始坐标 //取得触摸点对象 UITouch *touch = [touches anyObject]; //转换成坐标点 CGPoint point = [touch locationInView:self.view]; }
2.如何获取坐标信息
1)获取到触摸点
UITouch *touch=[touches anyObject]
//获得起始坐标
//取得触摸点对象
UITouch *touch = [touches anyObject];
2)转换为坐标点
[touch locationInView:self.view]
CGPoint point = [touch locationInView:self.view];
iOS开发-UI (一)常用控件的更多相关文章
- iOS开发UI篇—UIScrollView控件介绍
iOS开发UI篇—UIScrollView控件介绍 一.知识点简单介绍 1.UIScrollView控件是什么? (1)移动设备的屏幕⼤大⼩小是极其有限的,因此直接展⽰示在⽤用户眼前的内容也相当有限 ...
- iOS开发UI篇—UITableview控件简单介绍
iOS开发UI篇—UITableview控件简单介绍 一.基本介绍 在众多移动应⽤用中,能看到各式各样的表格数据 . 在iOS中,要实现表格数据展示,最常用的做法就是使用UITableView,UIT ...
- iOS开发UI篇—UIScrollView控件实现图片缩放功能
iOS开发UI篇—UIScrollView控件实现图片缩放功能 一.缩放 1.简单说明: 有些时候,我们可能要对某些内容进行手势缩放,如下图所示 UIScrollView不仅能滚动显示大量内容,还能对 ...
- iOS开发UI篇—UITableview控件基本使用
iOS开发UI篇—UITableview控件基本使用 一.一个简单的英雄展示程序 NJHero.h文件代码(字典转模型) #import <Foundation/Foundation.h> ...
- iOS开发UI篇—UITableview控件使用小结
iOS开发UI篇—UITableview控件使用小结 一.UITableview的使用步骤 UITableview的使用就只有简单的三个步骤: 1.告诉一共有多少组数据 方法:- (NSInteger ...
- iOS开发UI篇—UIScrollView控件实现图片轮播
iOS开发UI篇—UIScrollView控件实现图片轮播 一.实现效果 实现图片的自动轮播 二.实现代码 storyboard中布局 代码: #import "YYV ...
- 【转】 iOS开发UI篇—UIScrollView控件实现图片轮播
原文:http://www.cnblogs.com/wendingding/p/3763527.html iOS开发UI篇—UIScrollView控件实现图片轮播 一.实现效果 实现图片的自动轮播 ...
- iOS开发之七:常用控件--UISlider、UISegmentedControl、UIPageControl的使用
一.UISlider的使用 其实UISlider在iOS开发中用的似乎不是很多,我们看到的用到的地方多是音乐播放器的音量控制,以及视频播放器中的音量控制. 还是记录一下吧! 1.常用属性 // 设置获 ...
- iOS开发之六:常用控件--UIImageView的使用
UIImageView是我们做iOS开发用的非常多的一个控件,IOS中的各种图片,包括头像,有的背景图片等基本都要用到这个控件. 1.常用的属性以及方法 <span style="fo ...
随机推荐
- ASP.NET中XML转JSON的方法
原文:ASP.NET中XML转JSON的方法 许多应用程序都将数据存储为XML的格式,而且会将数据以JSON的格式发送到客户端以做进一步处理.要实现这一点,它们必须将XML格式转换为JSON格式. X ...
- [译]Java设计模式之解释器
(文章翻译自Java Design Pattern: Interpreter) 解释器模式适用于当一些内容需要翻译的时候.下面的例子是一个非常简单的解释器实现.它将字母"a"和&q ...
- 读书笔记—CLR via C#章节11-13
前言 这本书这几年零零散散读过两三遍了,作为经典书籍,应该重复读反复读,既然我现在开始写博了,我也准备把以前觉得经典的好书重读细读一遍,并且将笔记整理到博客中,好记性不如烂笔头,同时也在写的过程中也可 ...
- RESTful API Develop
yii2 RESTful API Develop 参考文档:http://www.yiiframework.com/doc-2.0/guide-rest.html 以 DB 中的 news 表为例 ...
- Jumony快速抓取网页
Jumony快速抓取网页 --- Jumony使用笔记--icode 作者:郝喜路 个人主页:http://www.cnicode.com 博客地址:http://haoxilu.c ...
- C#函数式程序设计之函数、委托和Lambda表达式
C#函数式程序设计之函数.委托和Lambda表达式 C#函数式程序设计之函数.委托和Lambda表达式 相信很多人都听说过函数式编程,提到函数式程序设计,脑海里涌现出来更多的是Lisp.Haske ...
- 数组自定义排序:IComparable和IComparer接口
首先先说一下IComparable和IComparer的区别,前者必须在实体类中实现,后者可以单独出现在一个排序类中,即此类只包含一个compare方法. Array类使用快速算法对数组中的元素进行排 ...
- iOS基础 - 通知中心(NSNotificationCenter)
通知中心(NSNotificationCenter) 每一个应用程序都有一个通知中心(NSNotificationCenter)实例,专门负责协助不同对象之间的消息通信 任何一个对象都可以向通知中心发 ...
- 如何本地测试例如QQ登录等第三方接口
前言:现在基本是个网站就会集成第三方的一些接口,比如QQ登录.分享等等.但是在开发的时候,尤其是没有这方面经验的开发人员来说,调试流程时会显得迷茫,不知道怎么调试.这里就个人的这方面学习摸索做一个总结 ...
- 适合编写代码的字体 Source Code Pro
今天看到博客园一篇文章,介绍了一种出身自 Adobe 的适合编码的字体,等宽,支持ClearType等,试用一下吧 项目地址:https://github.com/adobe/source-code- ...