首先要在一個View里面創(chuàng)建UIPickerView.下面是簡單的創(chuàng)建和使用
// 設(shè)置左上角取消按鈕
UIButton *cancleBtn = [UIButton new];
[cancleBtn setTitle:@"取消" forState:UIControlStateNormal];
[cancleBtn setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
cancleBtn.titleLabel.font = [UIFont systemFontOfSize:16];
[cancleBtn addTarget:self action:@selector(cancle) forControlEvents:UIControlEventTouchUpInside];
[self addSubview:cancleBtn];
[cancleBtn makeConstraints:^(MASConstraintMaker *make) {
make.top.equalTo(self).offset(15);
make.left.equalTo(self).offset(15);
}];
// 設(shè)置右上角確定按鈕
UIButton *confirmBtn = [UIButton new];
[confirmBtn setTitle:@"確定" forState:UIControlStateNormal];
[confirmBtn setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
confirmBtn.titleLabel.font = [UIFont systemFontOfSize:16];
[confirmBtn addTarget:self action:@selector(confirm) forControlEvents:UIControlEventTouchUpInside];
[self addSubview:confirmBtn];
[confirmBtn makeConstraints:^(MASConstraintMaker *make) {
make.top.equalTo(self).offset(15);
make.right.equalTo(self).offset(-15);
}];
// 設(shè)置提示語
UILabel *titleView = [UILabel new];
titleView.text = @"請選擇下列內(nèi)容";
titleView.textColor = [UIColor lightGrayColor];
titleView.font = [UIFont systemFontOfSize:15];
[self addSubview:titleView];
[titleView makeConstraints:^(MASConstraintMaker *make) {
make.centerX.equalTo(self);
make.top.equalTo(cancleBtn.bottom).offset(15);
}];
// 設(shè)置UIPickerView
UIPickerView *picker = [UIPickerView new];
picker.backgroundColor = [UIColor whiteColor];
picker.dataSource = self;
picker.delegate = self;
[self addSubview:picker];
[picker makeConstraints:^(MASConstraintMaker *make) {
make.left.equalTo(cancleBtn);
make.right.equalTo(confirmBtn);
make.top.equalTo(titleView.bottom).offset(15);
make.bottom.equalTo(self).offset(-10);
}];
/**
取消
*/
- (void)cancle
{
[self dismiss];
}
/**
確認
*/
- (void)confirm
{
if ([self.delegate respondsToSelector:@selector(pickerViewDidSelectString:)]) {
[self.delegate pickerViewDidSelectString:self];
}
[self dismiss];
}
#pragma mark - UIPickerViewDataSource
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView
{
return 1; // 組數(shù)
}
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component
{
return self.dataSource.count; // 行數(shù)
}
#pragma mark - UIPickerViewDelegate
- (CGFloat)pickerView:(UIPickerView *)pickerView rowHeightForComponent:(NSInteger)component
{
return 40; // 行高
}
- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component
{
return [self.dataSource objectAtIndex:row]; // 每行顯示的數(shù)據(jù)
}
- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
{
_pickerString = [self.dataSource objectAtIndex:row]; // 把選中的行傳給只讀的_pickerString
}
UIPickerView基本使用
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
- 文/潘曉璐 我一進店門渺尘,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人说敏,你說我怎么就攤上這事鸥跟。” “怎么了盔沫?”我有些...
- 文/不壞的土叔 我叫張陵医咨,是天一觀的道長。 經(jīng)常有香客問我架诞,道長拟淮,這世上最難降的妖魔是什么? 我笑而不...
- 正文 為了忘掉前任谴忧,我火速辦了婚禮很泊,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘沾谓。我一直安慰自己委造,他們只是感情好,可當我...
- 文/花漫 我一把揭開白布搏屑。 她就那樣靜靜地躺著争涌,像睡著了一般粉楚。 火紅的嫁衣襯著肌膚如雪辣恋。 梳的紋絲不亂的頭發(fā)上,一...
- 文/蒼蘭香墨 我猛地睜開眼逛腿,長吁一口氣:“原來是場噩夢啊……” “哼稀并!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起单默,我...
- 正文 年R本政府宣布,位于F島的核電站拉庶,受9級特大地震影響嗜憔,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜氏仗,卻給世界環(huán)境...
- 文/蒙蒙 一吉捶、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧皆尔,春花似錦呐舔、人聲如沸。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至流炕,卻和暖如春澎现,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背每辟。 一陣腳步聲響...
推薦閱讀更多精彩內(nèi)容
- 小學語文修改病句的方法 修改病句是小學語文考試中常見的題型,在修改病句之前秋冰,我們應該清晰的了解有哪些病句現(xiàn)象仲义,下面...
- 一埃撵、允許root用戶在任何地方進行遠程登錄,并具有所有庫任何操作權(quán)限虽另, 具體操作如下: 在本機先使用root用戶登...
- 一個人財富起點之前捂刺,一定是知識儲備的起點谣拣。要改變自己的人生軌跡,相比于財務(wù)上生硬干癟的計劃族展,讀書和學習的計劃是最先...
- Dear 懷舟: 從昨天開始森缠,狂風大作,黃沙四起仪缸。夜里下起了雨贵涵,今早雖然風大,但顯然溫度不低恰画,空氣也干凈了許多宾茂。未...