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;                                   



  • 相关阅读:
    javascript数据类型判断
    Week04面向对象设计与继承
    201621044079《Java程序设计》第1周学习总结
    201621044079 week05继承、多态、抽象类与接口
    201621044079《Java程序设计》第二周学习总结
    Week03面向对象入门
    201621044079WEEK06接口、内部类
    202020211 20209320 《Linux内核原理与分析》第一周作业
    第二天:PowerShell别名
    第一天:powershell外部命令
  • 原文地址:https://www.cnblogs.com/syios/p/4694424.html
Copyright © 2011-2022 走看看