zoukankan      html  css  js  c++  java
  • 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中一行的尺寸。

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

    4.   delegate:

    4.0 设置UIPickerView代理

    1 _pickerView.delegate = self;

    4.1 // 设置UIPickView每行显示的内容

    1 - (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component
    2 {
    3     return @"showData";
    4 }

    4.2 

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

    效果:

        

    5.   dataSource:数据源

     1 #pragma mark  - dataSource method
     2 // 设置每列显示3行
     3 - (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component
     4 {
     5     return 3;
     6 }
     7 // 设置显示2列
     8 -(NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView
     9 {
    10     return 2; 
    11 }

    6. showsSelectionIndicator:是否显示指示器,默认为NO  

    1 _pickerView.showsSelectionIndicator = NO;

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

    7.当点击UIPickerView的某一列中某一行的时候,就会调用这个方法。

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

    8. 返回第component列每一行的高度

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

    9.刷新某一列的数据

    一旦调用了这个方法,就会重新给数据源发送消息计算这列的行数、重新给代理发送消息获得这列的内容

    1 [pickerView reloadComponent:1];

    10. 刷新所有列的数据

    1 - (void)reloadAllComponents;

    11. 返回选中的是第component列的第几行。

    1 - (NSInteger)selectedRowInComponent:(NSInteger)component; 
  • 相关阅读:
    如何控制input框!
    火车头采集器破解版
    记Angular与Django REST框架的一次合作(2):前端组件化——Angular
    拉勾网一些“震惊”的结论
    一个知乎重度用户眼中的知乎
    anthelion编译
    搜索引擎爬虫蜘蛛的USERAGENT大全
    Netty系列之Netty高性能之道
    python正则表达式
    Cookie的使用,详解,获取,无法互通、客户端获取Cookie、深入解析cookie
  • 原文地址:https://www.cnblogs.com/CJDog/p/4774900.html
Copyright © 2011-2022 走看看