GeekBand——iOS第六期第三周學習筆記

一、初入iOS

1.1 學習iOS開發

? 學習iOS最為重要的是跟隨課程進度,視頻中老師講解的要下來經常練習,其次是具備較強的自學能力,對于開發學習資料有兩種來源,其一為:查閱官方文檔包括。其二為:各種開發者交流社區。

目前課程進度為對iOS界面控件的學習。iOS中有許多的界面控件其中:

1、UIButton類是iOS的按鈕類。

2、UILabel類是iOS的標簽類,負責顯示文本。

3、UIImage類是圖片類,負責將圖片封裝成對象。

3、UITextField類是iOS的文本框類,供用戶在指定區域輸入一行值。

4、UITextView類是多行文本框類,可以輸入多行文字。

5、UIAlertController類是警報窗,可以彈出對話框,并且對話框其它區域不能點擊。

6、UISwitch類是開關按鈕,只有0和1兩個值,一般用于對是和否的設置。

7、UISegmentedControl類是分段按鈕,和開關按鈕一樣是值改變事件。

8、UISlider類是滑塊按鈕,如對亮度的調節就可以用滑塊。

9、UIProgressView類是進度條類,可以告訴用戶,目前的進度。

等等。這些控件都有相應的類方法和對象方法,還有各自的特定屬性供開發者自定義自己的界面。下來應該多多練習和熟悉這些界面控件。

2.2 初學iOS

? iOS是為移動設備開發應用程序,所以我覺得開發一個iOS應用最為重要的是兩點:功能強大和操作簡單。功能強大是用戶選擇移動應用的原因,操作簡單是移動應用留住用戶的關鍵。

從Single View Application開始,學習iOS應用程序的開發。(iOS6.0以前其實提供了,純代碼的開發工程,更新后就取消了,我也不知道為什么,但是我覺得純代碼的開發工程更適合新手學習)

先看文件結構:AppDelegate類顧名思義是應用程序代理類。其中實現文件中的方法是整個程序運行的生命周期,這些方法是由系統自動調用,而不能手動調用。

寫在這些方法中的代碼就是在這種狀態下,程序應該干些啥子。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions ?//程序發射完成,就是運行完了歡迎界面。進入main窗口。

- (void)applicationWillResignActive:(UIApplication *)application//程序將要進入不活動狀態,大概意思是說,其它程序打斷這個程序的運行。比如有人給你打電話。

- (void)applicationDidEnterBackground:(UIApplication *)application//程序已經進入后臺。意思是說用戶按了home鍵,或者跳轉。

- (void)applicationWillEnterForeground:(UIApplication *)application//程序將要進入前臺。于上面相反。

- (void)applicationDidBecomeActive:(UIApplication *)application//程序已經變成活動狀態,和不活動狀態相反。

- (void)applicationWillTerminate:(UIApplication *)application//程序將要終止。就是說用戶手動上滑程序,強制關閉應用。

接下來是ViewController

我們可以看到,ViewController繼承自UIViewController,就是說ViewController是視圖控制器的子類,什么是視圖控制器呢?我理解是相當于一個容器,其名可以放任何可與用戶參生交互的東西,而且只有放在這個上面,我們才能看到。其實現文件中有兩個方法:

- (void)viewDidLoad {

[super viewDidLoad];

}//view加載完后,先調用父類的加載方法,這個明顯體現了多態,重寫了父類的加載方法。寫在這個方法中的代碼將在界面加載完成后執行。

- (void)didReceiveMemoryWarning {

[super didReceiveMemoryWarning];

}//也是重修父類的方法,意思是收到內存警告。也就是說,移動設備內存不足時,你該干什么。

Main.storyboard是故事版,其綁定的類是上面的ViewController,是方便我們可視化設計界面的一個工具。

Assets.xcassets是iOS提供給我們方便管理圖片的工具。其默認創建的一項AppIcon是管理應用程序的圖標。

LaunchScreen.storyboard是發射界面設計故事版,管理應用程序進入時,首先看到的歡迎界面,其隨后會自動消失。

info.plist這個文件,我的理解時管理整個應用程序的各種屬性,比如狀態欄的顯示,程序界面的主入口之類的。

main函數就不多說了。

二、Button

2.1 UIButton

UIButton類是iOS提供給我們的可點擊按鈕控件,這個控件應該分成兩部分來理解。一個是提供信息功能,一是時間響應功能。

在信息功能中,用戶可以自定義的屬性有:

UIButton but=[UIButton buttonWithType:XXXX]//創建一個button控件,其顯示類型可以自定義,iOS提供了很多UIButtonType類型,其實質是一個枚舉值。

[but setTitle:XX forState:XX]//第一個參數是設置,在按鈕上顯示的文字(注意:有些按鈕類型是不會顯示文字的),是NSString類型,第二個參數是在什么情況下顯示(這個需要下來仔細的熟悉一下)]

but.titleLabel.textColor=[UIColor redColor];是設置按鈕上顯示文字的顏色。

but.titleLabel.textAlignment//是設置按鈕顯示的文本格式。

but.tag=XX//是設置tag值,作用是標示此按鈕。

but.frame=CGMakeRectMake(xx,xx,xx,xx)是設置按鈕顯示的文字和大小。

如果按鈕的Type是Custom,還可以為按鈕添加圖片:[but setImage:[UIImage imageNamed:圖片名] forState:在那種狀態下顯示];

在響應功能中,要給這個按鈕設置一個Target,代碼如下:

[but addTarget:這個由誰去處理 action:處理的方法(通過@selector()取方法地址)forControlEvents:觸發這個Target的事件];

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容