pikerView入门代码
来源:互联网 发布:广州知途科技有限公司 编辑:程序博客网 时间:2024/06/03 13:21
#import "FZTextField.h"
#import "Flag.h"
#import "FZFlagView.h"
@interface FZTextField()<UIPickerViewDataSource,UIPickerViewDelegate>
@property(nonatomic,strong)NSArray *flags;
@end
@implementation FZTextField
// 加载数据
- (NSArray *)flags
{
if (_flags ==nil) {
NSString *path = [[NSBundlemainBundle] pathForResource:@"flags.plist"ofType:nil];
NSArray *arrayFlags = [NSArrayarrayWithContentsOfFile:path];
NSMutableArray *arrayM = [NSMutableArrayarray];
for (NSDictionary *dictin arrayFlags) {
Flag *flag = [FlagflagWithDict:dict];
[arrayM addObject:flag];
}
_flags = arrayM;
}
return _flags;
}
// 当从Xib中加载完描述的文本框,就会调用
- (void)awakeFromNib
{
[self setUp];
}
- (void)setUp
{
// 创建一个选择器
UIPickerView *pikerView = [[UIPickerViewalloc] init];
// 设置选择器的代理和数据源
pikerView.delegate = self;
pikerView.dataSource = self;
// 设置文本框输入键盘
self.inputView = pikerView;
// 程序已启动默认选中第0列第0行
[selfpickerView:pikerView didSelectRow:0inComponent:0];
}
#pragma mark - UIPickerViewDataSource
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView
{
return 1;
}
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component
{
return self.flags.count;
}
- (CGFloat)pickerView:(UIPickerView *)pickerView rowHeightForComponent:(NSInteger)component
{
return 80;
}
#pragma mark - UIPickerViewDelegate
- (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view
{
// 取出数据
Flag *flag = self.flags[row];
// 创建FZFlagView
FZFlagView *flagView = [FZFlagViewflagView];
// 设置FZFlagView的数据
flagView.flag = flag;
// 设置控件frame
CGRect frame = flagView.frame;
frame.size.width = [UIScreenmainScreen].bounds.size.width;
flagView.frame = frame;
// 返回flagView
return flagView;
}
// 用户选中某一行时调用
- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
{
Flag *flag = self.flags[row];
self.text = flag.name;
}
@end
- pikerView入门代码
- Android 滚动选择器PikerView
- C#入门代码集
- C#入门代码集
- C#入门代码集
- C#入门代码
- C#入门代码集
- C#入门代码集
- C#入门代码
- C#入门代码
- C#入门代码
- C#入门代码
- C#入门代码
- C#入门代码集
- Java2入门学习代码
- C#入门代码
- Struts2 入门实例代码
- C#入门代码
- Android基础入门教程——8.3.15 Paint API之——Typeface(字型)
- 从特征描述符到深度学习:计算机视觉发展20年
- 1019. General Palindromic Number (20)
- [81]Search in Rotated Sorted Array II
- Java SimpleORM 使用介绍
- pikerView入门代码
- ubuntu更改mysql字符集为utf8,使表中数据正确显示中文
- PHP urldecode()与urlencode()函数
- windows NT的安全性
- Java 定时任务 ScheduledExecutorService 的使用
- hdoj Least Common Multiple【gcd】
- 计算机一些基本进制单位及细节基础知识
- 量化分析师的Python日记【第2天:再接着介绍一下Python呗】
- android 6.0 Runtime Permissions Check