UIPickerView *pickView = [[UIPickerView alloc]initWithFrame:self.view.frame]; // 显示选中指示器,有一个透明的覆盖在选中航...:0]; UIPickerView的代理方法 UIPickerView的代理方法有两个UIPickerViewDelegate和UIPickerViewDataSource UIPickerViewDataSource...数据源代理方法设置UIPickerView的行数与列数。...以上这两个方法是代理必须实现的。 UIPickerViewDelegate代理方法设置UIPickerView的内容。...UIPickerView简单实用效果图 最后附上一个稍微复杂一点的UIPickerView使用练习代码 ✨本文借鉴了很多前辈的文章,如果有不对的地方请指正,欢迎大家一起交流学习 xx_cc
iOS中UIPopoverController使用详解 一、引言 UIPopoverController是Pad设备中常用的一种视图控制器,其在UI表现上为在当前视图控制器上面弹出一个子视图控制器...UIPopoverController只能用于iPad,在要兼容iPad和iPhone的项目中,需要根据设备类型使用两套代码。...二、UIPopoverController的使用详解 首先UIPopoverController是一个容器控制器,其中需要承载一个ViewControler作为内容视图。.../* 默认情况下,当视图控制器弹出时,点击界面上的其他位置,视图控制器会被隐藏 如果需要当视图控制爱弹出时界面上的其他控件依然可以进行用户交互,则需要将这些UI控件设置进这个数组中 */ @property...(5_0); 三、自定义UI展现的UIPopoverController 通过设置UIPopoverController对象的popoverBacjgroundViewClass属性可以将一个自定义的类作为控制器的背景视图
} completion:^(BOOL finished) { [view setHidden:hidden]; }]; } UIPickerView...显示和隐藏的动画.
最近项目上需要用到一个选择器,选择器中的内容只有年和月,而在iOS系统自带的日期选择器UIDatePicker中却只有四个选项如下,分别是时间(时分秒)、日期(年月日)、日期+时间(年月日时分)以及倒计时...分割线视图 @property (nonatomic, strong) UIView *lineView; /** 初始化子视图 ,整体布局*/ - (void)initUI; //以下三种方法在基类中的实现都是空白的...,具体的效果在子类中重写 /** 点击背景遮罩图层事件 */ - (void)didTapBackgroundView:(UITapGestureRecognizer *)sender; /** 取消按钮的点击事件...{ 127 128 } 129 130 @end 在BaseView.m中主要是对整体框架进行布局,我们的控件的位置都是通过绝对位置进行布局的,所以需要修改的在话可以直接在对应的位置上进行修改...,然后在BaseView.h中的注释我们说过了,点击背景遮罩图层和取消、确定按钮的点击事件实现效果在基类中都是空白的,具体效果在子类中进行重写来控制。
iPad开发简单介绍 iPad开发最大的不同在于iPhone的就是屏幕控件的适配,以及横竖屏的旋转。 Storyboard中得SizeClass的横竖屏配置,也不支持iPad开发。...1.在控制器中得到设备的旋转方向 在 iOS8及以后,屏幕就只有旋转后屏幕尺寸之分,不再是过期的旋转方向。...:duration animations:^{ }]; } 2.iPad中Modal弹出控制器的方式和样式 Modal常见有4种呈现样式 控制器属性 modalPresentationStyle...的使用 案例: 情景① 在导航栏上添加leftBarButtonItem按钮,然后弹出UIPopoverController 创建UIPopoverController控制器的内容控制器添加到UIPopoverController...(默认控制器有多大就显示多大)(120, 44 * 3) UIPopoverController的方法popoverContentSize 内容控制器中设置的方法 self.preferredContentSize
" 方法 : 获取 UIPickerView 中的可选的列表的选项个数; -- "numberOfRowsInComponent" 方法 : 获取 列 数; -- "rowSizeForComputer...UIPickerView 的 四列 中的每行选项 索引 [self.pickerView selectRow:randomNum inComponent:i animated:YES]...NSUInteger randomNum = arc4random() % icons.count; //将随机数设置给 UIPickerView 的 四列 中的每行选项...return icons.count; } /* 下面是 UIPickerViewDelegate 的委托方法 */ //设置每个 UIPickerView 中每列 每行 的选项 UI 控件...{ return 70; } //设置 UIPickerView 中每个选项的 高度 40 - (CGFloat) pickerView:(UIPickerView *)pickerView
iOS中UIPickerView使用总结 UIPickerView是iOS中的原生选择器控件,使用方便,用法简单,效果漂亮。...数据源代理中的方法: - (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView; 设置分区数 - (NSInteger...)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component; 根据分区设置行数 代理中的方法:...; 设置某一行显示的标题 - (NSAttributedString *)pickerView:(UIPickerView *)pickerView attributedTitleForRow:(NSInteger...)row forComponent:(NSInteger)component; 通过属性字符串设置某一行显示的标题 - (UIView *)pickerView:(UIPickerView *)pickerView
(比如带计步器功能的),比如用户今天走了 7000 步,那么你可能需要一个数字增长动画来让数字从 0 慢慢滚动到 7000。...选择 UIPickerView 是一种极为便捷的实现方法,但是实际上你没有办法在不使用私有API的情况下,改变 UIPickerView 的数字滚动速度,而它的默认速度极快。...在这个项目里我使用了一个有些 hack(你也可以说是鸡贼) 的方法,做出来 5 个 UIPickerView,前四个不显示,第五个显示。...让第 n 个 UIPickerView 以第 n-1 个 UIPickerView 滚动到的数字为目标进行滚动,这就好比你要坐电梯上10楼,你先设定一个5楼,然后到4楼的时候改主意了,取消5楼,设为8楼...,然后到了7楼又改成10楼……这当然要更耗时,所以5个(只要内存够大,你搞几个都一样)UIPickerView 一个比一个滚动地慢(这是数学问题,不是因为 UIPickerView 多了把手机搞卡了)。
ScreenShot 如图,做了一个四列的 UIPickerView,可以滑动选择精确到街道的中国行政区划信息,并返回地址,使用简单,直接像平时使用 UIPickerView...实现相应协议中的方法,可以在选择了地址之后,获取到相应地址信息的字符串,有兴趣欢迎戳进 项目 Github 地址,随手 ✨✨✨✨✨
本文中使用的是 ArcGIS Online 的专题服务。 1....允许用户选择专题 在这一节中, 允许用户从列表中选择一个国家。...当用户点击按钮时, 会调用 View Controller 的 ShowCountryPicker 方法, 在这个方法中, 我们初始化一个 UIPickerView 并把它显示在屏幕上, 要显示国家列表..., 则需要指定数据源并实现 UIPickerViewDataSource 协议中定义的方法, 为了能收到用户选择的选项, 还需要实现 UIPickerViewDelegate 协议中定义的 pickerView...显示选中的专题数据 我们现在来完成高亮显示属于用户选择的国家的数据。
城市选择器,借助于UIPickerView来实现,第一列为省份,第二列为第一列省份对应的城市或者区,数据放在plist中,plist结构如下图所示,第一层是一个Dictionary,每个省份对应的城市是一个...plist.png 实现步骤 第一步 拖入一个UIPickerView到StoryBoard中,然后设置UIPickerViewDelegate,和UIPickerViewDataSource为当前的控制器...*/ - (NSArray*)provinces { if (_provinces == nil) { //将省份保存到数组中 但是字典保存的是无序的 所以读出来的省份也是无序的...provinces中的第一个元素 self.selectedProvince = self.provinces[0]; } - (void)didReceiveMemoryWarning {...用户选择的省份 * @param component */ - (void)pickerView:(UIPickerView*)pickerView didSelectRow:(NSInteger
> UIAlertController>> 跟踪代码后,发现它在调用UIPopoverController的presentPopoverFromRect方法后,直接就调用了popoverControllerDidDismissPopover...方法 通过搜索“ios8 ipad UIPopoverController ”找到了这个链接(UIPopoverController not presenting in iPad iOS 8),一看到stackoverflow.com...中午吃过饭,再看那个crash的地方 cocos2d-x中的CCDictionary.cpp objectForKey方法的断点挂掉了 ?...当我准备放弃的时候,突然却想到新功能中主界面有一个功能上面有调用swf进行特效的显示,然后我看了一下它被隐藏了。那我想既然隐藏了,那就不要让它play嘛,结果试了一下,嗯,不崩溃了!...日志显示其实游戏已经启动了,都开始请求CDN上的资源了,只是界面还停留在重启那个界面,但崩溃的点却挂在了CCDictionary.cpp中。
结束角度就根据经过的时间和总的时间的比例进行角度计算。有了以上参数也可以算出在当前角度下的圆周上点的坐标,即可以画出那个圆点。...scheduledTimerWithTimeInterval:TIMER_INTERVAL target:self selector:@selector(setProgress) userInfo:nil repeats:YES]; ---- UIPickerView...count]) + (selectedRow % [m_arrayData count]) inComponent:0 animated:NO]; } -(NSInteger)pickerView:(UIPickerView...我依然没有在UIPickerView中找到设置固定单位的接口。...如果在-(NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger
iOS中的几种常见事件 ? 这篇文章只讨论触摸事件。...在一个用户点击事件处理过程中,UIEvent对象是唯一的。 点击对象UITouch UITouch表示单个点击,其类文件中存在枚举类型UITouchPhase的属性,用来表示当前点击的状态。...每次点击发生的时候,点击对象都放在一个集合中传入UIResponder的回调方法中,我们通过集合中对象获取用户点击的位置。...比如我们要实现点击一个tableView的一行时,呼出一个UIPickerView,并且附加一个用于回收PickerView的toolbar。..._inputView) { UIPickerView * pickView = [[UIPickerView alloc]initWithFrame:CGRectMake(0, 200
已经有二十多天没有更新自己的博客了,这段时间经历了很多事情,离开了生活了六七年的杭州,从离职再入职,忙的是一塌糊涂。...所以从以后开始,我的iOS系列的文章会逐渐的与Swift语言越来越相关。不得不说只有实际开发才能发现Swift中等着我要去踩的坑还有很多。没辙了,爱他就拼命的去填坑吧。...刚入职的第一周写了个简单的页面来熟悉公司项目代码,并且了解下业务。做了一个电商方面相关的收货地址的选择。 今天就来讲讲Swift版本的地址选择器的构建。...首先把UIPickerView这个类的两个代理方法在自己的类里实现,以后调用的时候不用再去实现UIPickerView的两个Delegate Method,之后我们再提供一个协议,用最简单的方式来完成数据的获取...至于省市区的结构,我们用结构体来处理,将省市区写成两个Struct,再之后就是简单的数据处理了。将数据加载并且传入这个Struct中。
iOS开发过程中,有时候一些第三方省市区位置选择器PickerView出现诡异bug:在快速同时分别滑动省、市、区各栏的时候,出现奔溃。这时候,你可以打个断点,查出问题所在。...这里记录修复这种bug的一种方案。首先看看出问题的源代码,然后指出问题所在,并给出修复方案。 1....问题代码 - (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger...所以添加一个判断即可: if (array && array.count > 0) { ... } 还有,array[row]中的row超过数组元素个数怎么办?...拓展文献 刨根问底:OC 中如何判断 NSArray 为空 http://www.jianshu.com/p/ba11a53777e1
项目中有时候会使用UIDatePicker,但是式样太少,不能满足项目需求,于是自己写了一款时间控件,有需要的同学可以看看!...Simulator Screen Shot - iPhone X - 2018-05-28 at 14.44.36.png 实现的思路都是使用UIPickerView 加上简单循环使用算法达到循环滚动的效果...NSString *dateString = [selectDate stringWithFormat:@"yyyy-MM-dd HH:mm"]; NSLog(@"选择的日期
我们在做webApp 开发的时候,经常会碰到下拉菜单,二级甚至三级菜单联动的需求。通常我们会用iscroll模拟个可以弹性滚动的选择框,然后每次根据选择自己写一些回调逻辑。...但是,对于类似 IOS 原生UIPickerView的滚动选择效果,之前没有直接的组件。不过,现在有了。...Picker.js就是一个高仿 IOS 的 UIPickerView效果的筛选器组件,拥有非常流畅的体验,由原生 JS 实现,不依赖任何插件和第三方库。...一起来看看它的效果。(采用的是官方示例) 单列 双列 三列 Picker.js的好处就是:安卓4.3+ ,IOS7+ 兼容。...但移动端上,需要的列数应该不会很多 之后便是事件的监听处理。
UIViewController *)master withBarButtonItem:(UIBarButtonItem *)barButtonItem forPopoverController:(UIPopoverController...2、导入几张素材图片,用来在详细控制器中显示。...所有的文件截图为: 3、下面就是具体的代码创建了: //在AppDelegate.m文件中: 导入头文件并声明必要的属性,同时实现分割控制器的协议 #import "AppDelegate.h" #import...UIViewController *)aViewController withBarButtonItem:(UIBarButtonItem *)barButtonItem forPopoverController:(UIPopoverController...#pragma mark - //选中单元格时,设置详细控制器中的内容 -(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath
使用 UIPopoverController的使用 http://www.cnblogs.com/wengzilin/archive/2012/03/13/2393675.html UIPopoverController...在Build页中,找到GCC 4.2 - Preprocessing下面的Preprocessor Macros,双击,在弹出来的对话框中增加一个值,例如FREE_VERSION。确定。...,我发现在Target中的Code Signing Identity还是我之前的设的iPhone Distribution, 所以看到这里就知道了,iPhone Distribution 的provisioning...profile肯定是不能运行的,所以把Target中的Code Signing Identity也设置成iPhone Develop就ok了,这样一切都说的通了,唯一不合理的就是在Project切换Code...Signing Identity并编译,但xCode没有自动将编译后的Target设置成和Project中的一致。