iOS UIPickerView的简单实用

      其实UIPickerView和UITableview的实现方法中,大致是相同的,就连作用都是一样的,只是运用在了不同的效果上而已,那么下面就记录几个方法就可以实现UIPickerView的效果:

1、设置UIPickerView的列

-(NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView;

2、设置UIPickerView 的行

-(NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component;

3、设置UIPickerView的行高

-(CGFloat)pickerView:(UIPickerView *)pickerView rowHeightForComponent:(NSInteger)component;

4、设置UIPickerView的文本信息

-(NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component;

5、UIPickerView的点击事件

-(void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component;

      通过以上的5个步骤,就能实现一个滚动的效果。但是呢,这里有一个问题,就是不能像UITableView中的Cell方法一样去设置[MoreCell.textLabel setFont:[UIFont systemFontOfSize:15.0f]];的样式或者字体大小,那么这里就涉及到了UIPickerView中的另外一个实现方法:

-(UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view{
   
    UILabel *lalTitle=(UILabel *)view;
    if (!lalTitle) {
        lalTitle=[[UILabel alloc] init];
        lalTitle.minimumScaleFactor=8;//设置最小字体,与minimumFontSize相同,minimumFontSize在IOS 6后不能使用。
        lalTitle.adjustsFontSizeToFitWidth=YES;//设置字体大小是否适应lalbel宽度
        lalTitle.textAlignment=NSTextAlignmentCenter;//文字居中显示
        [lalTitle setTextColor:[UIColor blackColor]];
        [lalTitle setFont:[UIFont systemFontOfSize:17.0f]];
    }
    lalTitle.text=[self pickerView:pickerView titleForRow:row forComponent:component];
    return lalTitle;
   
}

  

    到此,UIPickerView的简单实用就实现了!!!!

 

原文地址:https://www.cnblogs.com/boyuanmeng/p/4208288.html