当前位置: 首页 > news >正文

建一个网站需要什么流程百度图片识别搜索

建一个网站需要什么流程,百度图片识别搜索,怎么做淘宝客网站做淘客,青海省建设厅网站职称评审表UIPickerView 使用场景和功能UIPickerView遵循代理协议和数据源协议创建对象,添加代理必须实现的代理方法非必要实现的方法demo用到的其他函数提示 效果展示 使用场景和功能 UIPickerView 最常见的用途是作为选项选择器,允许用户从多个选项中选择一个。…

UIPickerView

  • 使用场景和功能
  • UIPickerView
    • 遵循代理协议和数据源协议
    • 创建对象,添加代理
    • 必须实现的代理方法
    • 非必要实现的方法
    • demo用到的其他函数
    • 提示
  • 效果展示

使用场景和功能

UIPickerView 最常见的用途是作为选项选择器,允许用户从多个选项中选择一个。UIPickerView 可以用于以滚动的方式展示大量数据,并允许用户通过滚动选择感兴趣的数据。一种很常见的用法是把各个数据以滚动的形式组成一个组合数据,比如年-月-日的日历或者时钟,以及省级-市级-区的地域 ;
这一部分的学习是参考学长的,用到了学长的plist文件 ;

UIPickerView

这个控件是iOS中自带的控件,使用方法类似于UItableview,所以就从UItableveiw的使用来分析了,这里跟着别人做了一个省级-市级-区的地域的小demo

遵循代理协议和数据源协议

#import <UIKit/UIKit.h>@interface ViewController : UIViewController <UIPickerViewDelegate, UIPickerViewDataSource>
@property (nonatomic, strong) UIPickerView* pickerview ;
@property (nonatomic, strong) NSMutableArray* provinceArray ;
@property (nonatomic, strong) NSArray* cityArray ;
@property (nonatomic, strong) NSArray* areaArray ;
@end

创建对象,添加代理

self.pickerview = [[UIPickerView alloc] initWithFrame:CGRectMake(50, 100, 300, 200)] ;//类似于tableview,需要设置代理和数据源self.pickerview.delegate = self ;self.pickerview.dataSource = self ;[self.view addSubview:self.pickerview] ;

必须实现的代理方法

//组数
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView {return 3;
}
//行数
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component {if (component == 0) {return [self.provinceArray count];} else if (component == 1) {return [self.cityArray count];} else {return [self.areaArray count] ;}
}

可以参考Uitableview的行和列,差不多的

非必要实现的方法

//展示的信息,可以是NSSTring,也可以是UIview
//- (NSString*)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component {
//    return @"chabuduo";
//}
//

//pickerview滑动函数

  • (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component {

简单常用的上面两个,还有很多其他的代理方法,可以参考UItableview;

UIPickerView 的代理方法用于处理用户的选择操作、自定义选项的外观以及其他与 UIPickerView 相关的事件。以下是一些常用的 UIPickerViewDelegate 和 UIPickerViewDataSource 协议中的代理方法:
UIPickerViewDelegate 协议中的代理方法:
pickerView(:didSelectRow:inComponent:):
当用户选择了 UIPickerView 中的某一行时调用该方法。你可以在该方法中获取选择的行和列索引,并根据需要进行相应的处理。
pickerView(
:viewForRow:forComponent:reusing:):
返回自定义 UIView 对象作为指定行和列的内容视图。你可以使用此方法自定义选项的外观,例如改变文本颜色、字体等。
pickerView(:rowHeightForComponent:):
返回指定列的行高。你可以使用此方法设置特定列的行高,以使选项在 UIPickerView 中正确显示。
UIPickerViewDataSource 协议中的代理方法:
numberOfComponents(in:):
返回 UIPickerView 中的列数(组件数)。你需要在此方法中指定需要显示的列数。
pickerView(
:numberOfRowsInComponent:):
返回指定列中的行数。你需要在此方法中指定每个列的行数,以确定每列将显示多少选项。

demo用到的其他函数

- (void)loadData {self.provinceArray = [[NSMutableArray alloc] initWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"area.plist" ofType:nil]] ;self.cityArray = [[self.provinceArray objectAtIndex:0] objectForKey:@"cities"] ;self.areaArray = [[self.cityArray objectAtIndex:0] objectForKey:@"areas"] ;
}
- (UIView*)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view {UILabel* myview = nil ;myview = [[UILabel alloc] init] ;myview.textAlignment = NSTextAlignmentCenter ;myview.font = [UIFont systemFontOfSize:22] ;if (component == 0) {myview.text = [[self.provinceArray objectAtIndex:row] objectForKey:@"state"] ;} else if (component == 1) {myview.text = [[self.cityArray objectAtIndex:row] objectForKey:@"city"] ;} else {myview.text = [self.areaArray objectAtIndex:row] ;}return myview ;
}
//pickerview滑动函数
- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component {if (component == 0) {self.cityArray = [[self.provinceArray objectAtIndex:row] objectForKey:@"cities"] ;[self.pickerview reloadComponent:1] ;//调整各组所选的对象[self.pickerview selectRow:0 inComponent:1 animated:YES] ;if ([self.cityArray count] != 0) {self.areaArray = [[self.cityArray objectAtIndex:0] objectForKey:@"areas"] ;[self.pickerview reloadComponent:2] ;[self.pickerview selectRow:0 inComponent:2 animated:YES] ;}} else if (component == 1) {if ([self.cityArray count] != 0) {self.areaArray = [[self.cityArray objectAtIndex:row] objectForKey:@"areas"] ;[self.pickerview reloadComponent:2] ;[self.pickerview selectRow:0 inComponent:2 animated:YES] ;}} else {}
}

提示

其他没啥好说的了,因为用起来真的太像UItableview了,这里简单解释一下滑动函数的逻辑,如果滑动“省”,则更新市和区的component并其row归零;如果滑动“市”,则更新区的component并归零 ;

效果展示

在这里插入图片描述

http://www.yayakq.cn/news/564649/

相关文章:

  • 青岛网站设计皆挺青岛博采网络梅河口网站开发
  • 网站建设要求 牛商网云盘搜索引擎入口
  • 网站制作程序我要啦免费统计怎么做网站
  • 怎么找合适的网站开发淘宝可以到哪些网站做推广
  • 成都专业网站推广公司百度商家平台登录
  • 怎么建设收费网站一整套vi设计
  • 全国招聘网站排名域名申请哪家好
  • 铜陵网站建设哪家好wordpress网站建设要钱吗
  • 网站设计规划的一般流程敦化网站开发
  • 福建住房与城乡建设部网站龙岗模板网站建设
  • 怎么找企业做网站做网站商城需要什么条件
  • 婚庆公司网站设计开发工具宏怎么使用
  • 企业手机网站建设资讯网站被攻击空间关了怎么办
  • 小橘子被做h网站企业安全文化建设程序
  • 网站开发7个基本流程图付费网站 源码 下载链接
  • 怎么做网站后期维护微商的货源都从哪来
  • 做点击率的网站山西自助建站系统怎么用
  • 通化 网站建设ip库网站源码
  • 大连网站制作-中国互联河南纯手工seo
  • 网站区域名怎么注册吗广告网站留电话不用验证码
  • 专业建材网站建设甘肃网站设计公司
  • 网站建设与管理期末试卷公司logo设计免费生成图片
  • 做网站虚拟主机推荐wordpress 外框
  • 建筑外观设计网站推荐网站后台页面模板下载
  • 公司营销网站怎么做免费发布推广信息的平台有哪些
  • 嘉兴手机模板建站上海建站网络科技有限公司
  • 免费网站建设工具网站自动识别手机
  • 微信分销网站建设价格静态网站的好处就是安全性好从而
  • 泉州网站的建设购物商城有哪些
  • 沈阳正规制作网站公司网络公关公司联系方式