//UIPickerView需要UIPickerViewDataSource,UIPickerViewDelegate作为代理
@interface AppDelegate : UIResponder <UIApplicationDelegate,UIPickerViewDataSource,UIPickerViewDelegate>
{
UIDatePicker * dp;
}
@property (strong,nonatomic) UIWindow *window;
@property (strong,nonatomic) NSArray * strings;
@property (strong,nonatomic) NSArray * strings1;
@property (strong,nonatomic) NSArray * images;
@end
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.
self.window = [[UIWindow alloc]initWithFrame:[[UIScreen mainScreen]bounds]];
self.window.backgroundColor=[UIColor whiteColor];
//初始化UIPickerView
UIPickerView *myPicker = [[UIPickerView alloc]initWithFrame:CGRectMake(0, 20, 320, 200)];
//把当前对象签署成myPicker的delegate
myPicker.delegate=self;
//建立两个数组
self.strings=[NSArray arrayWithObjects:@"11",@"22",@"333",@"4",@"55", nil];
self.strings1=[NSArray arrayWithObjects:@"aaa",@"b",@"ccccc", nil];
self.images = [NSArray arrayWithObjects:[UIImage imageNamed:@"bz.png"],[UIImage imageNamed:@"dr.png"],[UIImage imageNamed:@"zd.png"],[UIImage imageNamed:@"nc.png"], nil];
//让其默认显示中间那行 通过列来控制
[myPicker selectRow:2 inComponent:0 animated:NO];
[myPicker selectRow:1 inComponent:1 animated:NO];
[self.window addSubview:myPicker];
[self.window makeKeyAndVisible];
return YES;
}
//选择器显示数据时访问它 确定显示多少列 选择器不是事件触发的,是自己调用的行为
-(NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView
{
return 2;//
}
//每一列显示多少行
-(NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component
{
if (component==0) {
return [self.strings count];
}
else
{
return [self.strings1 count];
}
}
//-(UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view
//{
//
UILabel * lab = [[UILabel alloc]initWithFrame:CGRectMake(100, 20, 100, 100)];
lab.text= self.strings[row];
lab.textColor=[UIColor greenColor];
return lab;
//
UIImageView *iv = [[UIImageView alloc]init];
[iv setImage:self.images[row]];
return iv;
//}
//didSelect
-(void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
{
if (component==0)
{
NSLog(@"你选择了%@",self.strings[row]);
}
else
{
NSLog(@"你选择了%@",self.strings1[row]);
}
}
// 设置行高
-(CGFloat)pickerView:(UIPickerView *)pickerView rowHeightForComponent:(NSInteger)component
{
return 80;
}
//显示内容 titleForRow
-(NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component
{
if (component==0)
{
return self.strings[row];
}
else
{
return self.strings1[row];
}
}