真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

如何在iOS中封裝UIPickerView

本篇文章為大家展示了如何在iOS中封裝UIPickerView,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。

公司主營業(yè)務(wù):網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站制作、移動網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。創(chuàng)新互聯(lián)公司是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)公司推出江海免費(fèi)做網(wǎng)站回饋大家。

所需屬性

/** pickerView*/
@property (nonatomic, strong) UIPickerView pickerView;
/* pickerView背景*/
@property (nonatomic, strong) UIView pickerBackGroundView;
/* 背景*/
@property (nonatomic, strong) UIView backGroundView;
/* 確認(rèn)按鈕*/
@property (nonatomic, strong) UIButton sureButton;
/* 取消按鈕*/
@property (nonatomic, strong) UIButton cancelButton;
/* 單列pickerView*/
@property (nonatomic, strong) NSMutableArray slDataArray;
/* 雙列pickerView*/
@property (nonatomic, strong) NSMutableArray *mulDataArray;

如果只需要一列的話,只需要傳入一個數(shù)據(jù)數(shù)組:slDataArray,如果需要兩行,則兩個數(shù)組都需要賦值。

實(shí)現(xiàn)UIPickerView代理方法

-(NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView{
  if (self.mulDataArray.count == 0) {
  return 1;
 }else {
  return 2;
  }
}
-(NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component{
 if (component == 0) {
  return self.slDataArray.count;
  }else {
  return self.mulDataArray.count;
 }
}
-(NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component{
 if (component == 0) {
  return self.slDataArray[row];
 }else {
 return self.mulDataArray[row];
 }
}

這里根據(jù)兩個數(shù)組來初始化pickerView的內(nèi)容,即判斷第二個數(shù)組(mulDataArray)是否有數(shù)據(jù),有數(shù)據(jù)的話代表加載兩列的pickerView,否則加載一列。

功能實(shí)現(xiàn)

-(void)pickerViewSelectRow:(NSInteger)row
{
 self.selectRow = row;
 [self.pickerView selectRow:row inComponent:0 animated:NO];
}
-(void)pickerViewSelectRow:(NSInteger)row lastRow:(NSInteger)lastRow{
 [self.pickerView selectRow:row inComponent:0 animated:NO];
 [self.pickerView selectRow:lastRow inComponent:1 animated:NO];
}

第一個方法是只有一列的pickerView初始化是讓其選中哪行,第二個則是兩列的選擇方法。

-(void)showOrHidePickerView:(BOOL)isShow{
 if (isShow) {
  if (self.isPickerShow == NO) {
   [self addSubview:self.backGroundView];
   [self addSubview:self.pickerBackGroundView];
   [UIView animateWithDuration:0.3 animations:^{
     self.backGroundView.alpha = 0.5;
     self.pickerBackGroundView.frame = CGRectMake(0, SCREEN_HEIGHT -220, SCREEN_WIDTH, 220);
   } completion:^(BOOL finished) {   self.isPickerShow = YES;
   }];
  }
 }else {
  if (self.isPickerShow) {
   [UIView animateWithDuration:0.3 animations:^{
   self.backGroundView.alpha = 0.0;
   self.pickerBackGroundView.frame = CGRectMake(0, SCREEN_HEIGHT, SCREEN_WIDTH, 220);
  } completion:^(BOOL finished) {
   [self.backGroundView removeFromSuperview];
   [self.pickerBackGroundView removeFromSuperview];
   self.isPickerShow = NO;
  }];
  }
 }
}

這個方法是顯示或者隱藏pickerView,通過動畫的方式,背景慢慢變黑或者透明,pickerView從下往上出現(xiàn)或者從上往下消失。

-(void)pickerViewReloadData{
 [self.pickerView reloadAllComponents];
}

刷新pickerView數(shù)據(jù),加載另一個pickerView時,調(diào)用該方法刷新。

上述內(nèi)容就是如何在iOS中封裝UIPickerView,你們學(xué)到知識或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識儲備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


網(wǎng)站標(biāo)題:如何在iOS中封裝UIPickerView
網(wǎng)頁地址:http://weahome.cn/article/ghdcid.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部