iOS開發 UIPickerView 簡單介紹

2021-07-11 03:18:49 字數 3067 閱讀 2255

簡介:uipickerview

是乙個選擇器控制項,它比

uidatepicker

更加通用,它可以生成單列的選擇器,也可生成多列的選擇器,而且開發者完全可以自定義選擇項的外觀,因此用法非常靈活。

uipickerview直接繼承了uiview,沒有繼承uicontrol,因此,它不能像uicontrol那樣繫結事件處理方法,uipickerview的事件處理由其委託物件完成。使用uipickerview的物件應該遵守

uipickerviewdatasource,uipickerviewdelegate。 

1.uipickerview效果

2.宣告uipickerview,宣告屬性

@property

(nonatomic

,retain

)nsarray

*protimelist;

@property

(nonatomic

,retain

)nsarray

*protitlelist;

@property

(nonatomic

,retain

)nsstring

*protimestr;

@property

(nonatomic

,retain

)nsstring

*pronamestr;

uipickerview

*pickerview = [[

uipickerview

alloc

]initwithframe

:cgrectmake(0

,100

,320

,216

)];//

顯示選中框

pickerview.

showsselectionindicator

=yes

;pickerview.

datasource

=self

;pickerview.

delegate

=self;[

self

.view

addsubview

:pickerview];

_protitlelist

= [[

nsarray

alloc

]initwithobjects

:@"1月"

,@"2月"

,@"3月"

,@"4月"

,@"5月"

,@"6月"

,@"7月"

,@"8月"

,@"9月"

,@"10月"

,@"11月"

,@"12月"

,nil

];_protimelist

= [[

nsarray

alloc

]initwithobjects

:@"1日"

,@"2日"

,@"3日"

,@"4日"

,@"5日"

,@"6日"

,@"7日"

,@"8日"

,@"9日"

,@"10日"

,@"11日"

,@"12日"

,@"13日"

,@"14日"

,@"15日"

,@"16日"

,@"17日"

,@"18日"

,@"19日"

,@"20日"

,@"21日"

,@"22日"

,@"23日"

,@"24日"

,@"25日"

,@"26日"

,@"27日"

,@"28日"

,@"29日"

,@"30日"

,nil

];3.籤協議

<

uipickerviewdelegate

,uipickerviewdatasource

>

4.實現方法

// pickerview

列數- (

nsinteger

)numberofcomponentsinpickerview:(

uipickerview

*)pickerview

// pickerview

每列個數

- (nsinteger

)pickerview:(

uipickerview

*)pickerview numberofrowsincomponent:(

nsinteger

)component

return

[_protimelist

count];}

//每列寬度

- (cgfloat

)pickerview:(

uipickerview

*)pickerview widthforcomponent:(

nsinteger

)component

return

180;}//

返回選中的行

- (void

)pickerview:(

uipickerview

*)pickerview didselectrow:(

nsinteger

)row incomponent:(

nsinteger

)component

else }

//返回當前行的內容

,此處是將陣列中數值新增到滾動的那個顯示欄上

-(nsstring

*)pickerview:(

uipickerview

*)pickerview titleforrow:(

nsinteger

)row forcomponent:(

nsinteger

)component

else}

mac開發 ios開發

但是,任何乙個作業系統上,只使用開發語言就去開發程式是不行的。還需要有介面庫。尤其是支援object c的介面庫。mac上使用oc開發應用程式,都會使用xcode這個ide,整合開發工具,xcode中整合了gui介面庫。可以直接拖動控制項到介面上。objective c是一門語言,而cocoa 是這...

IOS開發經驗

基本要點 首先,你的應用程式 不能導致手機故障 比如崩潰或螢幕問題 應用內的所有 資訊中不能用固定值代替可變變數 不要使用任何sdk裡面的私人api 不要使用任何sdk文件裡面沒有列出的功能 不要提及使用者裝置上不存在的硬體功能 如果需要網路連線,在沒有網路的情況下要告知使用者 不要 過度 模仿任何...

ios開發記事

1.loadview 和 viewdidload 區別 就是當view的nib檔案為nil時,手工建立檢視介面時呼叫loadview 當view的nib檔案存在的時候,初始化工作在viewdidload中實現 但是如果你的程式執行期間記憶體不足,檢視控制器接到didreceivememorywarn...