關(guān)于UIPickerView

<p>UIPickerView是一個(gè)選擇器控件,它比UIDatePicker更加通用,它可以生成單列的選擇器屯换,也可生成多列的選擇器,而且開發(fā)者完全可以自定義選擇項(xiàng)的外觀与学,因此用法非常靈活彤悔。UIPickerView直接繼承了UIView,沒有繼承UIControl索守,因此晕窑,它不能像UIControl那樣綁定事件處理方法,UIPickerView的事件處理由其委托對象完成卵佛。</p>

<p>UIDatePicker控件只是負(fù)責(zé)該控件的通用行為杨赤,而該控件包含多少列敞斋,各列包含多少個(gè)列表項(xiàng)則由UIPickerViewDataSource對象負(fù)責(zé)。開發(fā)者必須為UIPickerView設(shè)置UIPickerViewDataSource對象疾牲,并實(shí)現(xiàn)如下兩個(gè)方法植捎。</p>

  • - numberOfComponentsInPickerView: 該UIPickerView將通過該方法來判斷應(yīng)該包含多少列。
  • - pickerView:numberOfRowsInComponent: 該UIPickerView將通過該方法判斷指定列應(yīng)該包含多少個(gè)列表項(xiàng)阳柔。

<p>如果程序需要控制UIPickerView中各列的寬度焰枢,以及各列中列表項(xiàng)的大小和外觀,或程序需要為UIPickerView的選中事件提供響應(yīng)舌剂,都需要為UIPickerView設(shè)置UIPickerViewDelegate委托對象济锄,并根據(jù)需要實(shí)現(xiàn)該委托對象中的如下方法。</p>

  • - pickerView:rowHeightForComponent: 該方法返回的CGFloat值將作為該UIPickerView控件中指定列中列表項(xiàng)的高度霍转。
  • - pickerView:widthForComponent: 該方法返回的CGFloat值將作為該UIPickerView控件中指定列的寬度荐绝。
  • - pickerView:titleForRow:forComponent: 該方法返回的NSString值將作為該UIPickerView控件中指定列的列表項(xiàng)的文本標(biāo)題。
  • - pickerView:viewForRow:forComponent:reusingView: 該方法返回的UIView控件將直接作為該UIPickerView控件中指定列的指定列表項(xiàng)谴忧。
  • - pickerView:didSelectRow:inComponent: 當(dāng)用戶單擊選中該UIPickerView控件的指定列的指定列表項(xiàng)時(shí)將會激發(fā)該方法很泊。
// 監(jiān)聽輪子的滾動(dòng)
- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component {
    if (component == kStateComponent) {
        NSString * selectedState = self.firstArr[row];
        self.secondArr = self.dataDic[selectedState];
       
       // !!! 更新第二個(gè)輪子的數(shù)據(jù)
        [_pick reloadComponent:kZipcomponent];
        [_pick selectRow:0 inComponent:kZipcomponent animated:YES];
    }
    
    // 獲取UIPickerView的不同的component選中的那行
    NSInteger stateRow = [self.pick selectedRowInComponent:kStateComponent];
    NSInteger zipRow = [self.pick selectedRowInComponent:kZipcomponent];
    
    NSString *state = self.firstArr[stateRow];
    NSString *zip = self.secondArr[zipRow];
    
    NSString * title = [[NSString alloc] initWithFormat:@"You selected zip code %@",zip];
    NSString * message = [[NSString alloc] initWithFormat:@"%@ is in %@",zip,state];
    
    //官方解釋:UIAlertView is deprecated in iOS 8. (Note that UIAlertViewDelegate is also deprecated.) To create and manage alerts in iOS 8 and later, instead use UIAlertController with a preferredStyle of UIAlertControllerStyleAlert. (主要是說UIAlertView在iOS 8中被廢棄了,取而代之的是UIAlertController)

    UIAlertController *alert = [UIAlertController alertControllerWithTitle:title message:message preferredStyle:UIAlertControllerStyleAlert];
    
    UIAlertAction *action = [UIAlertAction actionWithTitle:@"OK" style:UIAlertActionStyleDefault handler:nil];
    [alert addAction:action];
    
    [self presentViewController:alert animated:YES completion:nil];
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末沾谓,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子戳鹅,更是在濱河造成了極大的恐慌均驶,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,084評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件枫虏,死亡現(xiàn)場離奇詭異妇穴,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)隶债,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,623評論 3 392
  • 文/潘曉璐 我一進(jìn)店門腾它,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人死讹,你說我怎么就攤上這事瞒滴。” “怎么了赞警?”我有些...
    開封第一講書人閱讀 163,450評論 0 353
  • 文/不壞的土叔 我叫張陵妓忍,是天一觀的道長。 經(jīng)常有香客問我愧旦,道長世剖,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,322評論 1 293
  • 正文 為了忘掉前任笤虫,我火速辦了婚禮旁瘫,結(jié)果婚禮上祖凫,老公的妹妹穿的比我還像新娘。我一直安慰自己酬凳,他們只是感情好惠况,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,370評論 6 390
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著粱年,像睡著了一般售滤。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上台诗,一...
    開封第一講書人閱讀 51,274評論 1 300
  • 那天完箩,我揣著相機(jī)與錄音,去河邊找鬼拉队。 笑死弊知,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的粱快。 我是一名探鬼主播秩彤,決...
    沈念sama閱讀 40,126評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼事哭!你這毒婦竟也來了漫雷?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,980評論 0 275
  • 序言:老撾萬榮一對情侶失蹤鳍咱,失蹤者是張志新(化名)和其女友劉穎降盹,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體谤辜,經(jīng)...
    沈念sama閱讀 45,414評論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡蓄坏,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,599評論 3 334
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了丑念。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片涡戳。...
    茶點(diǎn)故事閱讀 39,773評論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖脯倚,靈堂內(nèi)的尸體忽然破棺而出渔彰,到底是詐尸還是另有隱情,我是刑警寧澤挠将,帶...
    沈念sama閱讀 35,470評論 5 344
  • 正文 年R本政府宣布胳岂,位于F島的核電站,受9級特大地震影響舔稀,放射性物質(zhì)發(fā)生泄漏乳丰。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,080評論 3 327
  • 文/蒙蒙 一内贮、第九天 我趴在偏房一處隱蔽的房頂上張望产园。 院中可真熱鬧汞斧,春花似錦、人聲如沸什燕。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,713評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽屎即。三九已至庙睡,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間技俐,已是汗流浹背乘陪。 一陣腳步聲響...
    開封第一講書人閱讀 32,852評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留雕擂,地道東北人啡邑。 一個(gè)月前我還...
    沈念sama閱讀 47,865評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像井赌,于是被迫代替她去往敵國和親谤逼。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,689評論 2 354

推薦閱讀更多精彩內(nèi)容