iOS开发编程之UIPickerView

本文详细介绍了如何在iOS应用中初始化UIPickerView,包括数据的添加、展示、代理方法的实现以及如何响应用户的选择事件。通过实例代码展示了如何设置数据源、数据条目显示、标题赋值、显示选中指示和选择子项的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

初始化


 

[plain]  viewplain copy
  1. _pickerView [[UIPickerViewalloc]init];  
  2. _pickerView.center =self.view.center;  
  3. [self.viewaddSubview:_pickerView];  


 


 

添加数据


  

[plain]  viewplain copy
  1.    
  2.   
  3. _pickerView.dataSource =self;  
  4.   
  5. //返回pickerView要显示的组件的条目  
  6. (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView  
  7.  
  8.      NSInteger result =0;  
  9.      if ([pickerViewisEqual:_pickerView])  
  10.          result 1;//Figure-2.1  
  11.  //      result 2;//Figure-2.2  
  12.       
  13.      return result;  
  14.  
  15.   
  16. //返回每个组件的数据条目  
  17. (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component  
  18.  
  19.    NSInteger result =0;  
  20.    if ([pickerViewisEqual:_pickerView])  
  21.        result 10;  
  22.     
  23.    return result;  
  24.  
  25.   
  26.     

 





添加代理


  


   _pickerView.delegate =self;


   //给每个组件的title赋值

   - (NSString *)pickerView:(UIPickerView *)pickerViewtitleForRow:(NSInteger)rowforComponent:(NSInteger)component

   {

      NSString *title=nil;

      if ([pickerViewisEqual:_pickerView]){

          title = [NSStringstringWithFormat:@"Row%ld",(long)row+ 1];

      }

      return title;

   }



显示选中指示:


 _pickerView.showsSelectionIndicator YES;





选择子项:


1.添加数据源

@interface ViewController (){

   NSArray *pickerDatas;

}


pickerDatas =[NSArrayarrayWithObjects:@"Row1",@"Row2",@"Row3",@"Row4",@"Row5",@"Row6",@"Row7",nil];



2.修改pickerview的返回条目


//返回每个组件的数据条目

- (NSInteger)pickerView:(UIPickerView *)pickerViewnumberOfRowsInComponent:(NSInteger)component

{

   NSInteger result=0;

   if ([pickerViewisEqual:_pickerView]){

       result =[pickerDatascount];

   }

   return result;

}


3.修改pickerview的赋值


//给每个组件的title赋值

- (NSString *)pickerView:(UIPickerView *)pickerViewtitleForRow:(NSInteger)rowforComponent:(NSInteger)component

{

   NSString *title=nil;

   if ([pickerViewisEqual:_pickerView]){

       title =[NSStringstringWithFormat:@"%@",pickerDatas[row]];

   }

   return title;

}



4.添加选中pickerview子项方法


- (void)pickerView:(UIPickerView *)pickerViewdidSelectRow:(NSInteger)rowinComponent:(NSInteger)component

{

   NSString *title=pickerDatas[row];

   UIAlertView *alert= [[UIAlertViewalloc]initWithTitle:@"PickerSelected"message:titledelegate:selfcancelButtonTitle:@"OK"otherButtonTitles:nil,nil];

   

   [alert show];

}





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值