zoukankan      html  css  js  c++  java
  • ios-UIPickerView基本使用

    #import "ViewController.h"
    
    @interface ViewController ()<UIPickerViewDataSource,UIPickerViewDelegate>
    {
        NSArray *pickerArray;
    }
    @property (weak, nonatomic) IBOutlet UIPickerView *myPickerView;
    
    @end
    
    @implementation ViewController
    
    - (void)viewDidLoad
    {
        [super viewDidLoad];
        _myPickerView.dataSource=self;
        _myPickerView.delegate=self;
        _myPickerView.showsSelectionIndicator=YES;
        pickerArray=[NSArray arrayWithObjects:@"1",@"2",@"3",@"4",@"5",@"6",@"7",@"8",@"9",@"10", nil];
       
    }
    
    - (void)didReceiveMemoryWarning
    {
        [super didReceiveMemoryWarning];
        // Dispose of any resources that can be recreated.
    }
    -(NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView
    {
        return 3;
    }
    -(NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component
    {
        return pickerArray.count;
    }
    
    -(UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view
    {
        CGRect rect=CGRectMake(0, 0, [self pickerView:pickerView widthForComponent:row], [self pickerView:pickerView rowHeightForComponent:row]);
        UIView *testView=[[UIView alloc]initWithFrame:rect];
        [testView setBackgroundColor:[UIColor clearColor]];
        [testView setOpaque:YES];
        UILabel *label=[[UILabel alloc]initWithFrame:CGRectMake(8, 0, [self pickerView:pickerView widthForComponent:row]-16.0f, [self pickerView:pickerView rowHeightForComponent:row])];
        [label setBackgroundColor:[UIColor clearColor]];
        label.textAlignment=NSTextAlignmentCenter;
        label.text=pickerArray[row];
        switch (row)
        {
            case 1:
            case 2:
            {
                testView.backgroundColor=component==0?[UIColor greenColor]:[UIColor blueColor];
            }
            case 3:
            {
                testView.backgroundColor=component==0?[UIColor brownColor]:[UIColor redColor];
            }
            break;
            default:
            {
                testView.backgroundColor=component==0?[UIColor grayColor]:[UIColor orangeColor];
            }
            break;
        }
        label.font=[UIFont boldSystemFontOfSize:14.0f];
        [testView addSubview:label];
        return testView;
    }
    
    //可有可无
    -(NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component
    {
        return pickerArray[row];
    }
    - (CGFloat)pickerView:(UIPickerView *)pickerView widthForComponent:(NSInteger)component;
    {
        return 120;
    }
    -(CGFloat)pickerView:(UIPickerView *)pickerView rowHeightForComponent:(NSInteger)component
    {
        return 50;
    }
    
    - (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
    {
        
         NSLog(@"row=%ld",row);
    }

  • 相关阅读:
    2017.10.12
    2017.10.25
    2017.10.24
    进度条06
    课堂练习(返回一个环状一维整数数组中最大子数组的和)
    团队项目成员和题目
    团队作业--四则运算网页版
    进度条04
    个人作业(最大子数组)
    进度条03
  • 原文地址:https://www.cnblogs.com/thbbsky/p/4153204.html
Copyright © 2011-2022 走看看