#import "UIPickerViewController.h"
@interface UIPickerViewController ()
@end
@implementation UIPickerViewController
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
}
return self;
}
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view.
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
- (void)dealloc
{
[listArray release];
[super dealloc];
}
- (void)loadView
{
[super loadView];
// DatePicker
// UIDatePicker *datePicker = [[UIDatePicker alloc]initWithFrame:CGRectMake(0, 0, 320, 320)];
// datePicker.minimumDate = [NSDate dateWithTimeIntervalSinceNow:- 60 * 60 * 24 * 365 * 10];
// datePicker.maximumDate = [NSDate dateWithTimeIntervalSinceNow:60 * 60 * 24 * 365 * 10];
// datePicker.datePickerMode = UIDatePickerModeDate;
// [self.view addSubview:datePicker];
// [datePicker release];
//pickerview
listArray = [[NSMutableArray alloc]init];
[listArray addObject:[UIFont familyNames]];
NSArray *colors = [NSArray arrayWithObjects:[UIColor redColor],[UIColor blackColor],[UIColor grayColor],[UIColor greenColor],[UIColor whiteColor],nil];
[listArray addObject:colors];
NSMutableArray *array = [[NSMutableArray alloc]init];
for (int i = 10; i <= 50; i ++){
[array addObject:[NSNumber numberWithInt:i]];
}
[listArray addObject:array];
[array release];
UIPickerView *pickerView = [[UIPickerView alloc]initWithFrame:CGRectMake(0, 0, 320, 320)];
pickerView.delegate = self;
pickerView.dataSource = self;
pickerView.showsSelectionIndicator = YES;
[self.view addSubview:pickerView];
[pickerView release];
UILabel *label = [[UILabel alloc]initWithFrame:CGRectMake(0, 330, 320, 100)];
label.text = @"中华民族";
label.tag = 100;
[self.view addSubview:label];
[label release];
}
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView
{
return [listArray count];
}
// returns the # of rows in each component..
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component
{
return [[listArray objectAtIndex:component] count];
}
- (CGFloat)pickerView:(UIPickerView *)pickerView rowHeightForComponent:(NSInteger)component
{
return 40;
}
- (CGFloat)pickerView:(UIPickerView *)pickerView widthForComponent:(NSInteger)component
{
if (component == 0){
return 160;
}else if (component == 1){
return 80;
}else{
return 60;
}
}
- (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view
{
UILabel *lable = [[[UILabel alloc]initWithFrame:CGRectMake(0, 0, [self pickerView:pickerView widthForComponent:component], [self pickerView:pickerView rowHeightForComponent:component])] autorelease];
if (component == 0){
lable.text = [[listArray objectAtIndex:component] objectAtIndex:row];
}else if (component == 1){
lable.backgroundColor = [[listArray objectAtIndex:component] objectAtIndex:row];
}else{
lable.text = [NSString stringWithFormat:@"%@",[[listArray objectAtIndex:component] objectAtIndex:row]];
}
return lable;
}
- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
{
UILabel *label = (UILabel *)[self.view viewWithTag:100];
NSString *fontname = [[listArray objectAtIndex:0] objectAtIndex:[pickerView selectedRowInComponent:0]];
UIColor *color = [[listArray objectAtIndex:1] objectAtIndex:[pickerView selectedRowInComponent:1]];
NSNumber *s = [[listArray objectAtIndex:2] objectAtIndex:[pickerView selectedRowInComponent:2]];
label.backgroundColor = color;
label.font = [UIFont fontWithName:fontname size:[s integerValue]];
}
//- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component
//{
// return @"ggg";
//}
@end
UIPickerView 自定义
最新推荐文章于 2022-11-18 11:47:43 发布