zoukankan      html  css  js  c++  java
  • IOS开发UI基础UIPikerView的属性

    UIPikerView的属性


     1. numberOfComponents:返回UIPickerView当前的列数
    NSInteger num = _pickerView.numberOfComponents;
    NSLog( @"%d", num);


    2. - (NSInteger)numberOfRowsInComponent:(NSInteger)component; 返回component列中有多少行。
    NSInteger numInCp = [_pickerView numberOfRowsInComponent:0];
    NSLog(@"%d",numInCp);


    3. -  (CGSize)rowSizeForComponent:(NSInteger)component; 返回component中一行的尺寸。

    CGSize size = [_pickerView rowSizeForComponent:0];
    NSLog(@"%@", NSStringFromCGSize(size));


        •    delegate:
    2.0 设置UIPickerView代理
    _pickerView.delegate = self;
    // 设置UIPickView每行显示的内容
    2.1 - (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component
    {
        return @"showData";
    }


        •    - (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view;

    // 返回一个视图,用来设置pickerView的每行显示的内容。
    -(UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view
    {
        UIView *myView=[[UIView alloc]init];
        myView.backgroundColor = [UIColor redColor];
        return myView;
    }


        •    dataSource:数据源
    #pragma mark  - dataSource method
    // 设置每列显示3行
    - (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component
    {
        return 3;
    }
    // 设置显示2列
    -(NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView
    {
        return 2;
    }


    4. showsSelectionIndicator:是否显示指示器,默认为NO 
    _pickerView.showsSelectionIndicator = NO;

    注意:设置UIPickerView的行数与列数需要设置数据源,遵守UIPickerViewDataSource,设置UIPickerView的内容需要设置代理,并且遵守代理方法UIPickerViewDelegate。


    5.-(void)pickerView:(UIPickerView*)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component;
    当点击UIPickerView的某一列中某一行的时候,就会调用这个方法。


    6. 返回第component列每一行的高度
    - (CGFloat)pickerView:(UIPickerView *)pickerView
    rowHeightForComponent:(NSInteger)component;

    7.刷新某一列的数据
    一旦调用了这个方法,就会重新给数据源发送消息计算这列的行数、重新给代理发送消息获得这列的内容
    [pickerView reloadComponent:1];


    8. 刷新所有列的数据
    - (void)reloadAllComponents;


    9. 返回选中的是第component列的第几行。
    - (NSInteger)selectedRowInComponent:(NSInteger)component;                                   



  • 相关阅读:
    Rotation Kinematics
    离职 mark
    PnP 问题方程怎么列?
    DSO windowed optimization 代码 (4)
    Adjoint of SE(3)
    IMU 预积分推导
    DSO windowed optimization 代码 (3)
    DSO windowed optimization 代码 (2)
    OKVIS 代码框架
    DSO windowed optimization 代码 (1)
  • 原文地址:https://www.cnblogs.com/syios/p/4694424.html
Copyright © 2011-2022 走看看