




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第4章
界面控件與內(nèi)置視圖第4章
界面控件與內(nèi)置視圖本章內(nèi)容概要了解控件的作用以及它與視圖的關(guān)系。了解控件具有哪些基本的屬性。理解控件事件與觸屏事件的關(guān)系。理解控件的目標-行為機制,掌握如何通過代碼注冊和取消注冊目標-行為項。掌握常用控件的使用方法,如按鈕、文本框、分頁控件等。掌握重要視圖的使用方法,如進度條、警告視圖、滾輪選取視圖等。理解并運用委托模式。iOS應用程序開發(fā)方法與實踐2本章內(nèi)容概要了解控件的作用以及它與視圖的關(guān)系。iOS應用程序4.1界面控件基礎(chǔ)構(gòu)建程序界面的兩種主要方式:繼承現(xiàn)有的視圖,并添加自定義行為(第3章,創(chuàng)建UIView的子類,并重寫觸屏事件回調(diào)方法)。直接使用UIKit提供的界面控件與視圖(本章)。大多數(shù)界面控件都繼承自控件類UIControl,該類定義了所有控件的公共行為。UIControl是UIView的子類,因此界面控件就是視圖,所有適用于視圖的功能都適用于界面控件。iOS應用程序開發(fā)方法與實踐34.1界面控件基礎(chǔ)構(gòu)建程序界面的兩種主要方式:iOS應用4.1.1控件基本屬性UIControl類定義了所有控件的公共屬性:是否啟用:enabled屬性。是否被選中:selected屬性。否高亮顯示:highlighted屬性??丶?nèi)部的布局方式:contentVerticalAlignment、contentHorizontalAlignment屬性。具體請參見UIControl類的定義。iOS應用程序開發(fā)方法與實踐44.1.1控件基本屬性UIControl類定義了所有控件的4.1.2目標-行為機制UIKit內(nèi)部使用目標-行為機制來響應控件事件。應用程序中的某些對象O1、O2、O3...會對某一控件C的某種事件E感興趣,當在控件C上發(fā)生事件E后,這些對象上的某些事件處理方法M1、M2、M3...會被調(diào)用。對象O1、O2、O3...就稱作控件C對于事件E的目標集合。事件處理方法M1、M2、M3...稱作控件C對于事件E的行為集合。控件會有很多種事件,例如按下、抬起、值修改等??丶耐粋€事件的目標與行為可以有多個。iOS應用程序開發(fā)方法與實踐54.1.2目標-行為機制UIKit內(nèi)部使用目標-行為機制來4.1.2目標-行為機制三個必要信息:目標:哪些對象關(guān)心控件。事件:每個對象關(guān)心控件上的哪種事件。行為:事件發(fā)生后執(zhí)行目標對象上的哪個事件處理方法。每個控件通過維護自己的目標-行為表來記錄所有目標-行為項。在控件響應某種事件前,目標對象需要首先告訴控件以上三個信息,這個過程稱作目標-行為的注冊。反之,如果不再需要響應控件的某種事件,應該解除目標-行為的注冊。iOS應用程序開發(fā)方法與實踐64.1.2目標-行為機制三個必要信息:iOS應用程序開發(fā)方4.1.2目標-行為機制UIControl類定義了用于維護目標-行為表的方法://向控件注冊新的目標-行為項,傳入3個必要信息-(void)addTarget:(id)targetaction:(SEL)actionforControlEvents:(UIControlEvents)controlEvents;//撤銷已注冊的目標-行為項,傳入3個必要信息-(void)removeTarget:(id)targetaction:(SEL)actionforControlEvents:(UIControlEvents)controlEvents;//獲取指定目標對象上指定事件的行為方法名稱數(shù)組-(NSArray*)actionsForTarget:(id)targetforControlEvent:(UIControlEvents)controlEvent;iOS應用程序開發(fā)方法與實踐74.1.2目標-行為機制UIControl類定義了用于維護4.1.2目標-行為機制當發(fā)生控件事件后:遍歷控件的目標-行為表,找到該事件對應的所有目標-行為項。針對每一個目標-行為項,通知應用程序?qū)ο笳{(diào)用目標對象上的行為方法,并傳入事件對象。//通知應用程序?qū)ο?,讓其調(diào)用目標的指定行為方法-(void)sendAction:(SEL)actionto:(id)targetforEvent:(UIEvent*)event;//執(zhí)行與指定事件相關(guān)的所有行為方法-(void)sendActionsForControlEvents:(UIControlEvents)controlEvents;iOS應用程序開發(fā)方法與實踐84.1.2目標-行為機制當發(fā)生控件事件后:iOS應用程序開4.1.2目標-行為機制控件是響應對象,控件類重寫了4個觸屏回調(diào)方法,會根據(jù)觸屏對象所處的階段,將它們轉(zhuǎn)換為對應的控件事件??丶氖褂谜咧恍桕P(guān)注各種控件事件,而無需再關(guān)注于低級的觸屏事件??丶录菍τ|屏事件的封裝。iOS應用程序開發(fā)方法與實踐94.1.2目標-行為機制控件是響應對象,控件類重寫了4個觸4.2常用界面控件的使用常用界面控件包括:按鈕。文本框。開關(guān)。滑動調(diào)節(jié)器。分頁控件。分段控件。iOS應用程序開發(fā)方法與實踐104.2常用界面控件的使用常用界面控件包括:iOS應用程序4.2.1按鈕按鈕是UIButton對象。傳入按鈕的類型參數(shù)來創(chuàng)建按鈕。+(id)buttonWithType:(UIButtonType)buttonType;設置按鈕在某一狀態(tài)時的標題。-(void)setTitle:(NSString*)titleforState:(UIControlState)state;iOS應用程序開發(fā)方法與實踐114.2.1按鈕按鈕是UIButton對象。iOS應用程序開4.2.1按鈕按鈕最常用的事件就是內(nèi)部抬起事件UIControlEventTouchUpInside。參見教材“案例:按鈕的使用方法”。iOS應用程序開發(fā)方法與實踐124.2.1按鈕按鈕最常用的事件就是內(nèi)部抬起事件UICont4.2.3文本框與鍵盤交互文本框是UITextField對象,用于接收用戶輸入的文本信息。iOS應用程序開發(fā)方法與實踐134.2.3文本框與鍵盤交互文本框是UITextField對4.2.3文本框與鍵盤交互-設置樣式使用initWithFrame:方法,傳入定位置尺寸進行初始化。文本框允許設置外觀,例如:設置字體:font屬性。設置默認提示信息:placeholder屬性。設置邊框樣式:borderStyle屬性。設置清除按鈕的模式:clearButtonMode屬性。iOS應用程序開發(fā)方法與實踐144.2.3文本框與鍵盤交互-設置樣式使用initWithF4.2.3文本框與鍵盤交互-設置軟鍵盤文本框在處于編輯狀態(tài)時會自動彈出軟鍵盤。所有實現(xiàn)文本輸入的控件都需要實現(xiàn)UITextInput協(xié)議,其中被繼承的UITextInputTraits協(xié)議又定義了鍵盤輸入的相關(guān)特性。定義軟鍵盤的類型:keyboardType屬性。設置鍵盤的返回鍵類型:returnKeyType屬性。自動轉(zhuǎn)換為大寫(僅限英文):autocapitalizationType屬性。iOS應用程序開發(fā)方法與實踐154.2.3文本框與鍵盤交互-設置軟鍵盤文本框在處于編輯狀態(tài)4.2.3文本框與鍵盤交互-文本框委托文本框使用了委托模式,委托協(xié)議為UITextFieldDelegate。@property(nonatomic,assign)id<UITextFieldDelegate>delegate;文本框會在特定的時間點調(diào)用委托方法:在文本框內(nèi)容開始/結(jié)束編輯之前/之后。在替換指定的內(nèi)容前。點擊清空按鈕后。點擊返回鍵后等。參見教材“案例:文本框的使用方法”。取消文本框的第一響應狀態(tài),即可令鍵盤消失。iOS應用程序開發(fā)方法與實踐164.2.3文本框與鍵盤交互-文本框委托文本框使用了委托模式4.2.5開關(guān)開關(guān)控件是UISwitch對象。使用UISwitch的initWithFrame:方法進行初始化。要么開啟要么關(guān)閉,只能二選一。獲取開關(guān)狀態(tài):on屬性。設置開關(guān)狀態(tài):setOn:animated:方法。開關(guān)控件的尺寸不可調(diào)整。iOS應用程序開發(fā)方法與實踐174.2.5開關(guān)開關(guān)控件是UISwitch對象。iOS應用程4.2.5開關(guān)開關(guān)控件允許獲取開關(guān)狀態(tài),以動畫方式設置開關(guān)狀態(tài),以及設置開關(guān)開啟時的渲染顏色。手動修改開關(guān)狀態(tài)時會引發(fā)UIControlEventValueChanged事件,而通過代碼修改則不會引發(fā)。參見教材“案例:開關(guān)的使用方法”。iOS應用程序開發(fā)方法與實踐184.2.5開關(guān)開關(guān)控件允許獲取開關(guān)狀態(tài),以動畫方式設置開關(guān)4.2.7滑動調(diào)節(jié)器滑動調(diào)節(jié)器是UISlider對象,用于在一個連續(xù)的范圍內(nèi)選取其中的一個值。使用UISlider的initWithFrame:方法進行初始化。iOS應用程序開發(fā)方法與實踐194.2.7滑動調(diào)節(jié)器滑動調(diào)節(jié)器是UISlider對象,用于4.2.7滑動調(diào)節(jié)器滑動調(diào)節(jié)器允許:設置滑動調(diào)節(jié)器的最小值與最大值:minimumValue屬性與maximumValue屬性。設置或獲取滑動調(diào)節(jié)器當前值:value屬性。設置滑動調(diào)節(jié)器的最小值圖片與最大值圖片:minimumValueImage屬性與maximumValueImage屬性。指定是否連續(xù)發(fā)送事件消息:continuous屬性。以動畫方式修改滑動調(diào)節(jié)器的當前值:setValue:animated:方法。手動調(diào)整滑動調(diào)節(jié)器會引發(fā)UIControlEventValueChanged事件。參見教材“案例:滑動調(diào)節(jié)器的使用方法”。iOS應用程序開發(fā)方法與實踐204.2.7滑動調(diào)節(jié)器滑動調(diào)節(jié)器允許:iOS應用程序開發(fā)方法4.2.9分頁控件分頁控件是UIPageControl對象,用于在多個頁面中顯示信息。它顯示若干個小圓點,每個圓點代表一頁。使用UIPageControl的initWithFrame:方法進行初始化。iOS應用程序開發(fā)方法與實踐214.2.9分頁控件分頁控件是UIPageControl對象4.2.9分頁控件分頁控件允許:設置或獲取分頁控件的總共頁數(shù):numberOfPages屬性。設置或獲取當前顯示頁的下標:currentPage屬性。當翻頁時是否延遲顯示當前頁:defersCurrentPageDisplay屬性。切換分頁控件頁面時會引發(fā)UIControlEventValueChanged事件。參見教材“案例:分頁控件的使用方法”。iOS應用程序開發(fā)方法與實踐224.2.9分頁控件分頁控件允許:iOS應用程序開發(fā)方法與實4.2.11分段控件分段控件是UISegmentedControl對象。水平方向上分成若干分段的按鈕,可以顯示文字或圖片。當用戶點擊了某個分段,則該分段高亮顯示。使用UISegmentedControl的initWithItems:方法進行初始化。-(id)initWithItems:(NSArray*)items;數(shù)組成員可以是字符串對象或者圖片對象。iOS應用程序開發(fā)方法與實踐234.2.11分段控件分段控件是UISegmentedCon4.2.11分段控件分段控件允許:設置或獲取分段控件的樣式:segmentedControlStyle屬性。獲取分段的數(shù)量:numberOfSegments屬性。設置或獲取當前選中的分段下標:selectedSegmentIndex屬性。設置分段控件的渲染顏色:tintColor屬性。手動切換分段控件的所選分段時會引發(fā)UIControlEventValueChanged事件。iOS應用程序開發(fā)方法與實踐244.2.11分段控件分段控件允許:iOS應用程序開發(fā)方法與4.3常用內(nèi)置視圖的使用常用內(nèi)置視圖包括:滾動視圖。進度條。任務指示視圖。警告視圖。行為列表。滾輪選取視圖。iOS應用程序開發(fā)方法與實踐254.3常用內(nèi)置視圖的使用常用內(nèi)置視圖包括:iOS應用程序4.3.1滾動視圖滾動視圖對應的類是UIScrollView,用于顯示尺寸較大的內(nèi)容(例如大尺寸圖片)。使用UIScrollView的initWithFrame:方法進行初始化。iOS應用程序開發(fā)方法與實踐264.3.1滾動視圖滾動視圖對應的類是UIScrollVie4.3.1滾動視圖滾動視圖可以:設置要顯示的內(nèi)容尺寸:contentSize屬性。移動滾動視圖顯示的內(nèi)容:contentOffset屬性。指定滾動視圖內(nèi)容的最小和最大縮放比例:minimumZoomScale屬性與maximumZoomScale屬性。滾動視圖使用委托模式來處理縮放、拖拽、滾動以及相關(guān)的滾動動畫等。委托對象需要實現(xiàn)協(xié)議UIScrollViewDelegate。參見教材“案例:滾動視圖的使用方法”。iOS應用程序開發(fā)方法與實踐274.3.1滾動視圖滾動視圖可以:iOS應用程序開發(fā)方法與實4.3.3進度條進度條對應的類為UIProgressView,它同于指示一個可量化任務的當前進度。使用UIProgressView的initWithProgressViewStyle:方法進行初始化。-(id)initWithProgressViewStyle:(UIProgressViewStyle)style;進度條的高度不可調(diào)整,是由進度條樣式?jīng)Q定。iOS應用程序開發(fā)方法與實踐284.3.3進度條進度條對應的類為UIProgressVi4.3.3進度條進度條可以:設置或者獲取當前進度條顯示的進度值:progress屬性。設置進度條樣式:progressViewStyle屬性。iOS應用程序開發(fā)方法與實踐294.3.3進度條進度條可以:iOS應用程序開發(fā)方法與實踐24.3.4任務指示器任務指示器對應的類為UIActivityIndicatorView,同于表示一個不可量化的任務正在執(zhí)行。使用UIActivityIndicatorView的initWithProgressViewStyle:方法進行初始化。-(id)initWithActivityIndicatorStyle:(UIActivityIndicatorViewStyle)style;根據(jù)樣式自動決定任務指示器的尺寸,即不能手動指定任務指示器的大小。iOS應用程序開發(fā)方法與實踐304.3.4任務指示器任務指示器對應的類為UIActivit4.3.4任務指示器任務指示器可以:設置或獲取任務指示器的當前樣式:activityIndicatorViewStyle屬性??刂浦甘酒鏖_始或者停止動畫:startAnimating與stopAnimating方法。否處于動畫狀態(tài):isAnimating方法。iOS應用程序開發(fā)方法與實踐314.3.4任務指示器任務指示器可以:iOS應用程序開發(fā)方法4.3.5警告視圖警告視圖對應的類是UIAlertView,包含標題、消息內(nèi)容以及若干個按鈕。以彈出對話框的方式來提示重要信息,或是提示進行選擇。iOS應用程序開發(fā)方法與實踐324.3.5警告視圖警告視圖對應的類是UIAlertView4.3.5警告視圖警告視圖使用UIAlertView的initWithTitle:message:delegate:cancelButtonTitle:otherButtonTitles:方法進行初始化。標題內(nèi)容消息內(nèi)容委托對象(實現(xiàn)UIAlertViewDelegate協(xié)議)取消按鈕標題其他按鈕標題iOS應用程序開發(fā)方法與實踐334.3.5警告視圖警告視圖使用UIAlertView的in4.3.5警告視圖警告視圖的委托對象需要實現(xiàn)UIAlertViewDelegate協(xié)議。在單擊警告視圖的某個按鈕、進行動畫前后以及消失前后調(diào)用委托對象的協(xié)議方法。協(xié)議方法alertView:clickedButtonAtIndex:會在用戶單擊某個按鈕后引發(fā)。其中的參數(shù)包含了所點擊按鈕的下標。參見教材“案例:警告視圖的使用方法”。iOS應用程序開發(fā)方法與實踐344.3.5警告視圖警告視圖的委托對象需要實現(xiàn)UIAlert4.3.7行為列表行為列表與警告視圖類似,它也提供了若干按鈕,用戶可以從中選擇一項。行為列表對應的類為UIActionSheet。iOS應用程序開發(fā)方法與實踐354.3.7行為列表行為列表與警告視圖類似,它也提供了若干按4.3.7行為列表行為列表使用UIActionSheet的initWithTitle:message:delegate:cancelButtonTitle:otherButtonTitles:方法進行初始化。標題內(nèi)容委托對象(實現(xiàn)UIActionSheetDelegate協(xié)議)黑色取消按鈕標題紅色警告按鈕標題其他按鈕標題iOS應用程序開發(fā)方法與實踐364.3.7行為列表行為列表使用UIActionSheet的4.3.7行為列表行為列表的委托對象需要實現(xiàn)UIActionSheetDelegate協(xié)議。在單擊行為列表的某個按鈕、顯示以及消失前后調(diào)用委托對象的協(xié)議方法。協(xié)議方法actionSheet:clickedButtonAtIndex:會在用戶單擊某個按鈕后引發(fā)。其中的參數(shù)包含了所點擊按鈕的下標。iOS應用程序開發(fā)方法與實踐374.3.7行為列表行為列表的委托對象需要實現(xiàn)UIActio4.3.8滾輪選取視圖滾輪選取視圖是UIPickerView類的對象,外觀類似一個滾動的輪盤,允許從一系列值中選取某一項。滾輪選取視圖使用UIPickerView的initWithFrame:方法進行初始化。其尺寸是固定的,不可修改。iOS應用程序開發(fā)方法與實踐384.3.8滾輪選取視圖滾輪選取視圖是UIPickerVie滾輪選取視圖的數(shù)據(jù)源與委托使用滾輪選取視圖時需要提供委托對象和數(shù)據(jù)源對象。委托對象:實現(xiàn)UIPickerViewDelegate協(xié)議,提供行高、列寬、指定行指定列的內(nèi)容,以及響應用戶的選擇。數(shù)據(jù)源對象:實現(xiàn)UIPickerViewDatasource協(xié)議,提供要顯示多少個組件(列),以及每一個組件包含的行數(shù)。參見教材“案例:滾輪選取視圖的使用方法”。iOS應用程序開發(fā)方法與實踐39滾輪選取視圖的數(shù)據(jù)源與委托使用滾輪選取視圖時需要提供委托對象小結(jié)本章主要介紹了以下內(nèi)容:界面控件基礎(chǔ),包括基本屬性與目標-行為機制??丶录c觸屏事件的關(guān)系。常用界面控件的使用,包括:按鈕文本框與鍵盤交互開關(guān)控件滑動調(diào)節(jié)器分頁控件分段控件iOS應用程序開發(fā)方法與實踐40小結(jié)本章主要介紹了以下內(nèi)容:iOS應用程序開發(fā)方法與實踐40小結(jié)常用內(nèi)置視圖的使用方法:滾動視圖進度條警告視圖行為列表滾輪選取視圖iOS應用程序開發(fā)方法與實踐41小結(jié)常用內(nèi)置視圖的使用方法:iOS應用程序開發(fā)方法與實踐41第4章
界面控件與內(nèi)置視圖第4章
界面控件與內(nèi)置視圖本章內(nèi)容概要了解控件的作用以及它與視圖的關(guān)系。了解控件具有哪些基本的屬性。理解控件事件與觸屏事件的關(guān)系。理解控件的目標-行為機制,掌握如何通過代碼注冊和取消注冊目標-行為項。掌握常用控件的使用方法,如按鈕、文本框、分頁控件等。掌握重要視圖的使用方法,如進度條、警告視圖、滾輪選取視圖等。理解并運用委托模式。iOS應用程序開發(fā)方法與實踐43本章內(nèi)容概要了解控件的作用以及它與視圖的關(guān)系。iOS應用程序4.1界面控件基礎(chǔ)構(gòu)建程序界面的兩種主要方式:繼承現(xiàn)有的視圖,并添加自定義行為(第3章,創(chuàng)建UIView的子類,并重寫觸屏事件回調(diào)方法)。直接使用UIKit提供的界面控件與視圖(本章)。大多數(shù)界面控件都繼承自控件類UIControl,該類定義了所有控件的公共行為。UIControl是UIView的子類,因此界面控件就是視圖,所有適用于視圖的功能都適用于界面控件。iOS應用程序開發(fā)方法與實踐444.1界面控件基礎(chǔ)構(gòu)建程序界面的兩種主要方式:iOS應用4.1.1控件基本屬性UIControl類定義了所有控件的公共屬性:是否啟用:enabled屬性。是否被選中:selected屬性。否高亮顯示:highlighted屬性??丶?nèi)部的布局方式:contentVerticalAlignment、contentHorizontalAlignment屬性。具體請參見UIControl類的定義。iOS應用程序開發(fā)方法與實踐454.1.1控件基本屬性UIControl類定義了所有控件的4.1.2目標-行為機制UIKit內(nèi)部使用目標-行為機制來響應控件事件。應用程序中的某些對象O1、O2、O3...會對某一控件C的某種事件E感興趣,當在控件C上發(fā)生事件E后,這些對象上的某些事件處理方法M1、M2、M3...會被調(diào)用。對象O1、O2、O3...就稱作控件C對于事件E的目標集合。事件處理方法M1、M2、M3...稱作控件C對于事件E的行為集合??丶泻芏喾N事件,例如按下、抬起、值修改等。控件的同一個事件的目標與行為可以有多個。iOS應用程序開發(fā)方法與實踐464.1.2目標-行為機制UIKit內(nèi)部使用目標-行為機制來4.1.2目標-行為機制三個必要信息:目標:哪些對象關(guān)心控件。事件:每個對象關(guān)心控件上的哪種事件。行為:事件發(fā)生后執(zhí)行目標對象上的哪個事件處理方法。每個控件通過維護自己的目標-行為表來記錄所有目標-行為項。在控件響應某種事件前,目標對象需要首先告訴控件以上三個信息,這個過程稱作目標-行為的注冊。反之,如果不再需要響應控件的某種事件,應該解除目標-行為的注冊。iOS應用程序開發(fā)方法與實踐474.1.2目標-行為機制三個必要信息:iOS應用程序開發(fā)方4.1.2目標-行為機制UIControl類定義了用于維護目標-行為表的方法://向控件注冊新的目標-行為項,傳入3個必要信息-(void)addTarget:(id)targetaction:(SEL)actionforControlEvents:(UIControlEvents)controlEvents;//撤銷已注冊的目標-行為項,傳入3個必要信息-(void)removeTarget:(id)targetaction:(SEL)actionforControlEvents:(UIControlEvents)controlEvents;//獲取指定目標對象上指定事件的行為方法名稱數(shù)組-(NSArray*)actionsForTarget:(id)targetforControlEvent:(UIControlEvents)controlEvent;iOS應用程序開發(fā)方法與實踐484.1.2目標-行為機制UIControl類定義了用于維護4.1.2目標-行為機制當發(fā)生控件事件后:遍歷控件的目標-行為表,找到該事件對應的所有目標-行為項。針對每一個目標-行為項,通知應用程序?qū)ο笳{(diào)用目標對象上的行為方法,并傳入事件對象。//通知應用程序?qū)ο?,讓其調(diào)用目標的指定行為方法-(void)sendAction:(SEL)actionto:(id)targetforEvent:(UIEvent*)event;//執(zhí)行與指定事件相關(guān)的所有行為方法-(void)sendActionsForControlEvents:(UIControlEvents)controlEvents;iOS應用程序開發(fā)方法與實踐494.1.2目標-行為機制當發(fā)生控件事件后:iOS應用程序開4.1.2目標-行為機制控件是響應對象,控件類重寫了4個觸屏回調(diào)方法,會根據(jù)觸屏對象所處的階段,將它們轉(zhuǎn)換為對應的控件事件。控件的使用者只需關(guān)注各種控件事件,而無需再關(guān)注于低級的觸屏事件??丶录菍τ|屏事件的封裝。iOS應用程序開發(fā)方法與實踐504.1.2目標-行為機制控件是響應對象,控件類重寫了4個觸4.2常用界面控件的使用常用界面控件包括:按鈕。文本框。開關(guān)?;瑒诱{(diào)節(jié)器。分頁控件。分段控件。iOS應用程序開發(fā)方法與實踐514.2常用界面控件的使用常用界面控件包括:iOS應用程序4.2.1按鈕按鈕是UIButton對象。傳入按鈕的類型參數(shù)來創(chuàng)建按鈕。+(id)buttonWithType:(UIButtonType)buttonType;設置按鈕在某一狀態(tài)時的標題。-(void)setTitle:(NSString*)titleforState:(UIControlState)state;iOS應用程序開發(fā)方法與實踐524.2.1按鈕按鈕是UIButton對象。iOS應用程序開4.2.1按鈕按鈕最常用的事件就是內(nèi)部抬起事件UIControlEventTouchUpInside。參見教材“案例:按鈕的使用方法”。iOS應用程序開發(fā)方法與實踐534.2.1按鈕按鈕最常用的事件就是內(nèi)部抬起事件UICont4.2.3文本框與鍵盤交互文本框是UITextField對象,用于接收用戶輸入的文本信息。iOS應用程序開發(fā)方法與實踐544.2.3文本框與鍵盤交互文本框是UITextField對4.2.3文本框與鍵盤交互-設置樣式使用initWithFrame:方法,傳入定位置尺寸進行初始化。文本框允許設置外觀,例如:設置字體:font屬性。設置默認提示信息:placeholder屬性。設置邊框樣式:borderStyle屬性。設置清除按鈕的模式:clearButtonMode屬性。iOS應用程序開發(fā)方法與實踐554.2.3文本框與鍵盤交互-設置樣式使用initWithF4.2.3文本框與鍵盤交互-設置軟鍵盤文本框在處于編輯狀態(tài)時會自動彈出軟鍵盤。所有實現(xiàn)文本輸入的控件都需要實現(xiàn)UITextInput協(xié)議,其中被繼承的UITextInputTraits協(xié)議又定義了鍵盤輸入的相關(guān)特性。定義軟鍵盤的類型:keyboardType屬性。設置鍵盤的返回鍵類型:returnKeyType屬性。自動轉(zhuǎn)換為大寫(僅限英文):autocapitalizationType屬性。iOS應用程序開發(fā)方法與實踐564.2.3文本框與鍵盤交互-設置軟鍵盤文本框在處于編輯狀態(tài)4.2.3文本框與鍵盤交互-文本框委托文本框使用了委托模式,委托協(xié)議為UITextFieldDelegate。@property(nonatomic,assign)id<UITextFieldDelegate>delegate;文本框會在特定的時間點調(diào)用委托方法:在文本框內(nèi)容開始/結(jié)束編輯之前/之后。在替換指定的內(nèi)容前。點擊清空按鈕后。點擊返回鍵后等。參見教材“案例:文本框的使用方法”。取消文本框的第一響應狀態(tài),即可令鍵盤消失。iOS應用程序開發(fā)方法與實踐574.2.3文本框與鍵盤交互-文本框委托文本框使用了委托模式4.2.5開關(guān)開關(guān)控件是UISwitch對象。使用UISwitch的initWithFrame:方法進行初始化。要么開啟要么關(guān)閉,只能二選一。獲取開關(guān)狀態(tài):on屬性。設置開關(guān)狀態(tài):setOn:animated:方法。開關(guān)控件的尺寸不可調(diào)整。iOS應用程序開發(fā)方法與實踐584.2.5開關(guān)開關(guān)控件是UISwitch對象。iOS應用程4.2.5開關(guān)開關(guān)控件允許獲取開關(guān)狀態(tài),以動畫方式設置開關(guān)狀態(tài),以及設置開關(guān)開啟時的渲染顏色。手動修改開關(guān)狀態(tài)時會引發(fā)UIControlEventValueChanged事件,而通過代碼修改則不會引發(fā)。參見教材“案例:開關(guān)的使用方法”。iOS應用程序開發(fā)方法與實踐594.2.5開關(guān)開關(guān)控件允許獲取開關(guān)狀態(tài),以動畫方式設置開關(guān)4.2.7滑動調(diào)節(jié)器滑動調(diào)節(jié)器是UISlider對象,用于在一個連續(xù)的范圍內(nèi)選取其中的一個值。使用UISlider的initWithFrame:方法進行初始化。iOS應用程序開發(fā)方法與實踐604.2.7滑動調(diào)節(jié)器滑動調(diào)節(jié)器是UISlider對象,用于4.2.7滑動調(diào)節(jié)器滑動調(diào)節(jié)器允許:設置滑動調(diào)節(jié)器的最小值與最大值:minimumValue屬性與maximumValue屬性。設置或獲取滑動調(diào)節(jié)器當前值:value屬性。設置滑動調(diào)節(jié)器的最小值圖片與最大值圖片:minimumValueImage屬性與maximumValueImage屬性。指定是否連續(xù)發(fā)送事件消息:continuous屬性。以動畫方式修改滑動調(diào)節(jié)器的當前值:setValue:animated:方法。手動調(diào)整滑動調(diào)節(jié)器會引發(fā)UIControlEventValueChanged事件。參見教材“案例:滑動調(diào)節(jié)器的使用方法”。iOS應用程序開發(fā)方法與實踐614.2.7滑動調(diào)節(jié)器滑動調(diào)節(jié)器允許:iOS應用程序開發(fā)方法4.2.9分頁控件分頁控件是UIPageControl對象,用于在多個頁面中顯示信息。它顯示若干個小圓點,每個圓點代表一頁。使用UIPageControl的initWithFrame:方法進行初始化。iOS應用程序開發(fā)方法與實踐624.2.9分頁控件分頁控件是UIPageControl對象4.2.9分頁控件分頁控件允許:設置或獲取分頁控件的總共頁數(shù):numberOfPages屬性。設置或獲取當前顯示頁的下標:currentPage屬性。當翻頁時是否延遲顯示當前頁:defersCurrentPageDisplay屬性。切換分頁控件頁面時會引發(fā)UIControlEventValueChanged事件。參見教材“案例:分頁控件的使用方法”。iOS應用程序開發(fā)方法與實踐634.2.9分頁控件分頁控件允許:iOS應用程序開發(fā)方法與實4.2.11分段控件分段控件是UISegmentedControl對象。水平方向上分成若干分段的按鈕,可以顯示文字或圖片。當用戶點擊了某個分段,則該分段高亮顯示。使用UISegmentedControl的initWithItems:方法進行初始化。-(id)initWithItems:(NSArray*)items;數(shù)組成員可以是字符串對象或者圖片對象。iOS應用程序開發(fā)方法與實踐644.2.11分段控件分段控件是UISegmentedCon4.2.11分段控件分段控件允許:設置或獲取分段控件的樣式:segmentedControlStyle屬性。獲取分段的數(shù)量:numberOfSegments屬性。設置或獲取當前選中的分段下標:selectedSegmentIndex屬性。設置分段控件的渲染顏色:tintColor屬性。手動切換分段控件的所選分段時會引發(fā)UIControlEventValueChanged事件。iOS應用程序開發(fā)方法與實踐654.2.11分段控件分段控件允許:iOS應用程序開發(fā)方法與4.3常用內(nèi)置視圖的使用常用內(nèi)置視圖包括:滾動視圖。進度條。任務指示視圖。警告視圖。行為列表。滾輪選取視圖。iOS應用程序開發(fā)方法與實踐664.3常用內(nèi)置視圖的使用常用內(nèi)置視圖包括:iOS應用程序4.3.1滾動視圖滾動視圖對應的類是UIScrollView,用于顯示尺寸較大的內(nèi)容(例如大尺寸圖片)。使用UIScrollView的initWithFrame:方法進行初始化。iOS應用程序開發(fā)方法與實踐674.3.1滾動視圖滾動視圖對應的類是UIScrollVie4.3.1滾動視圖滾動視圖可以:設置要顯示的內(nèi)容尺寸:contentSize屬性。移動滾動視圖顯示的內(nèi)容:contentOffset屬性。指定滾動視圖內(nèi)容的最小和最大縮放比例:minimumZoomScale屬性與maximumZoomScale屬性。滾動視圖使用委托模式來處理縮放、拖拽、滾動以及相關(guān)的滾動動畫等。委托對象需要實現(xiàn)協(xié)議UIScrollViewDelegate。參見教材“案例:滾動視圖的使用方法”。iOS應用程序開發(fā)方法與實踐684.3.1滾動視圖滾動視圖可以:iOS應用程序開發(fā)方法與實4.3.3進度條進度條對應的類為UIProgressView,它同于指示一個可量化任務的當前進度。使用UIProgressView的initWithProgressViewStyle:方法進行初始化。-(id)initWithProgressViewStyle:(UIProgressViewStyle)style;進度條的高度不可調(diào)整,是由進度條樣式?jīng)Q定。iOS應用程序開發(fā)方法與實踐694.3.3進度條進度條對應的類為UIProgressVi4.3.3進度條進度條可以:設置或者獲取當前進度條顯示的進度值:progress屬性。設置進度條樣式:progressViewStyle屬性。iOS應用程序開發(fā)方法與實踐704.3.3進度條進度條可以:iOS應用程序開發(fā)方法與實踐24.3.4任務指示器任務指示器對應的類為UIActivityIndicatorView,同于表示一個不可量化的任務正在執(zhí)行。使用UIActivityIndicatorView的initWithProgressViewStyle:方法進行初始化。-(id)initWithActivityIndicatorStyle:(UIActivityIndicatorViewStyle)style;根據(jù)樣式自動決定任務指示器的尺寸,即不能手動指定任務指示器的大小。iOS應用程序開發(fā)方法與實踐714.3.4任務指示器任務指示器對應的類為UIActivit4.3.4任務指示器任務指示器可以:設置或獲取任務指示器的當前樣式:activityIndicatorViewStyle屬性。控制指示器開始或者停止動畫:startAnimating與stopAnimating方法。否處于動畫狀態(tài):isAnimating方法。iOS應用程序開發(fā)方法與實踐724.3.4任務指示器任務指示器可以:iOS應用程序開發(fā)方法4.3.5警告視圖警告視圖對應的類是UIAlertView,包含標題、消息內(nèi)容以及若干個按鈕。以彈出對話框的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030潤唇膏市場發(fā)展現(xiàn)狀調(diào)查及供需格局分析預測研究報告
- 2025-2030浴鹽行業(yè)風險投資發(fā)展分析及投資融資策略研究報告
- 2025-2030活性炭產(chǎn)業(yè)市場深度分析及發(fā)展趨勢與投資戰(zhàn)略研究報告
- 2025-2030汽車鎖產(chǎn)業(yè)規(guī)劃專項研究報告
- 2025-2030汽車用粉末冶金行業(yè)市場現(xiàn)狀供需分析及重點企業(yè)投資評估規(guī)劃分析研究報告
- 2025-2030汽車外部零件行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030江西省防水涂料行業(yè)市場發(fā)展分析及前景趨勢與投資戰(zhàn)略研究報告
- 2025-2030正電子發(fā)射斷層掃描(PET)掃描儀行業(yè)市場現(xiàn)狀供需分析及重點企業(yè)投資評估規(guī)劃分析研究報告
- 2025-2030椰汁產(chǎn)業(yè)政府戰(zhàn)略管理與區(qū)域發(fā)展戰(zhàn)略研究咨詢報告
- 2025-2030柴油潤滑改良劑行業(yè)市場現(xiàn)狀供需分析及重點企業(yè)投資評估規(guī)劃分析研究報告
- 土壤加固施工方案
- (完整word版)電力電子技術(shù).課后習題答案.南航.丁道宏
- 《旅行社計調(diào)業(yè)務》第六章入境接待計調(diào)業(yè)務
- 國開《小學數(shù)學教學研究》形考任務二
- 離婚財產(chǎn)申報表
- 波峰焊治具設計規(guī)范
- 附著式鋼管抱桿鐵塔組立施工方案
- 系統(tǒng)思考課件
- 中鋁中州礦業(yè)有限公司禹州市方山鋁土礦礦山地質(zhì)環(huán)境保護和土地復墾方案
- 手工滴膠課件完整版
- (現(xiàn)行版)江蘇省建筑與裝飾工程計價定額說明及計算規(guī)則
評論
0/150
提交評論