iOS 基于UIPickerView的封装

Mr丶D


最近工作不是很忙,想整理一下最近封装的控件。今天给大家带来的是基于UIPickerView的时间选择控件,首先我们来看一下效果。

接下来上代码:

1.首先来看.h和.m文件中声明了哪些子控件和方法(已加注释)


接口文件


私有变量

2.接下来在.m文件初始化控件(部分控件懒加载)

初始化方法

3.实现pickerView的协议方法以及定义pickerView样式


delegate方法


picker样式

4.选择时间之后的回调方法


选中回调方法

5.点击确定回调时间   在block代码块中更改tableView数据源 之后调用reload data方法刷新列表


回调时间

到这里基本就结束了,你可以在想用的地方调用以下代码:

TimeSelectorView* popView = [[TimeSelectorViewalloc] initWithFrame:self.view.frame];

popView.passTime= ^(NSString*time) {

更改数据源

[userInfoOne replaceObjectAtIndex:5 withObject: time];

[self.tableViewreloadData];

};

[[UIApplication sharedApplication].keyWindow addSubview: popView];

附赠创建本地数据源方法如图:

创建数据源

如有疑问可加QQ: 303533923

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,138评论 25 709
  • *7月8日上午 N:Block :跟一个函数块差不多,会对里面所有的内容的引用计数+1,想要解决就用__block...
    炙冰阅读 2,573评论 1 14
  • *面试心声:其实这些题本人都没怎么背,但是在上海 两周半 面了大约10家 收到差不多3个offer,总结起来就是把...
    Dove_iOS阅读 27,241评论 30 472
  • #开早会# 1261、因为乐山有好多好吃的,所以我们去成都吧。 1262、每个人都有一道坎,我的坎……呵呵。 #游...
    62dc958fa705阅读 285评论 0 2
  • 我们知道,oc中使用的是引用计数,哪么不可避免的就会产生两个对象互相引用对方,导致这两个对象都无法释放,产生内存泄...
    SpursGo阅读 634评论 0 1