iOS學習之UIPickerView控制項的簡單使用

2021-06-16 17:34:50 字數 2850 閱讀 6338

uipickerview控制項在給使用者選擇某些特定的資料時經常使用到,這裡演示乙個簡單的選擇資料,顯示在uitextfield輸入框裡,把uipickerview作為輸入view,用*******作為選定資料的按鈕。和其他uitableview控制項相似,uipickerview也需要資料來源。

我們要實現的效果如下:

下面開始使用的步驟。

2.1、拖放乙個uipickerview,放置在view的最下方

2.2、拖放乙個*******控制項,放置在view的外面,讓它不屬於view的子控制項,並把item命名為「完成」,效果如下:

2.3 放置乙個flexible space bar button item 撐開 

2.4  放乙個uitextfield,用來顯示選擇的資料

在viewcontroller.xib檔案裡按 alt + command+ enter鍵,開啟assistant editor,按住control鍵,選擇各個控制項,拖拽到 viewcontroller.h檔案裡,生成以下變數**

viewcontroller.h檔案裡實現

[cpp]view plain

copy

#import 

@inte***ce viewcontroller : uiviewcontroller

- (ibaction)selectbutton:(id)sender;  

@property (strong, nonatomic) iboutlet ui******* *done*******;  

@property (strong, nonatomic) iboutlet uipickerview *selectpicker;  

@property (strong, nonatomic) iboutlet uitextfield *textfield;  

@end  

viewcontroller.m檔案

[cpp]view plain

copy

-(nsinteger)numberofcomponentsinpickerview:(uipickerview *)pickerview  

-(nsinteger) pickerview:(uipickerview *)pickerview numberofrowsincomponent:(nsinteger)component  

-(nsstring*) pickerview:(uipickerview *)pickerview titleforrow:(nsinteger)row forcomponent:(nsinteger)component  

-(void

)textfielddidendediting:(uitextfield *)textfield  

上面numberofcomponentsinpickerview返回有幾個pickerview ,

textfielddidendediting這個在textfield結束編輯時,顯示pickerview選擇中的資料。

******* 的item的完成按鈕

[cpp]view plain

copy

- (ibaction)selectbutton:(id)sender   

[cpp]view plain

copy

- (void

)viewdidload    

**解釋:

設定委託

textfield.

delegate

=self;

selectpicker.

delegate

=self;

selectpicker.

datasource

=self;

隱藏uipickerview

selectpicker.frame =cgrectmake(0,480,320, 216);

執行:

例子**:

IOS學習之collectionView的使用

1 首次建立初始化時候肯定會遇到以下錯誤 uicollectionview must be initialized with a non nil layout parameter 解決辦法 使用乙個非空的layout初始化集合檢視,具體 源 wbsearchcontroller search wbs...

IOS控制項學習之UILabel

ios的uilabel我個人覺得很弱智,居然只有橫向設定而沒有豎向設定文字位置,這讓我很糾結。先看效果 1.新建專案 2.編輯 viewcontroller.m檔案 void viewdidload 3.自定義uilabelex 控制項 1 uilabelex.h import 定義乙個列舉型別,頂...

IOS學習筆記之NSZone

在碰到allocwithzone,copywithzone總會有個疑問,這個nszone到底是個什麼東西?簡單來說,可以想象成乙個記憶體池,alloc或是dealloc這些操作,都是在這個記憶體池中操作的。cocoa總是會配置乙個預設的nszone,任何預設的記憶體操作都是在這個 zone 上操作的...