您好,當然蘋果官方有提供使用方法及代碼庫供您閱讀
10年積累的成都網站建設、成都網站設計經驗,可以快速應對客戶對網站的新想法和需求。提供各種問題對應的解決方案。讓選擇我們的客戶得到更好、更有力的網絡服務。我雖然不認識你,你也不認識我。但先網站設計后付款的網站建設流程,更有新民免費網站建設讓你可以放心的選擇與我們合作。
CGAffineTransformTranslate來自蘋果官方
這些方法如果您需要的話,可以背下來
如果新方法出現了,那么會提供在蘋果額官方文檔中供您閱讀,對于新方法來說,蘋果會提供使用指南和方法介紹供您閱讀的
是的,如您所想,這些方法的發展一定是遵循某種規律的,但是很不幸,這些規律沒人能掌握,這是因為蘋果官方并非一人編寫新方法,而也許是數十人上百人在共同編寫,大家只能遵照一種標準去編寫,而對于我們開發者來說,閱讀最新的官方文檔或者用科學上網搜索一些外網論壇才能獲得最新的東西,而中文的用法則是一些先鋒者理解后翻譯出來造福給他人的
請您不要沮喪,這并非是您某些環節的知識缺失了,方法是固定的,您只需要了解并掌握,能夠在自己編寫時知道并使用即可,您不必知道它是從哪里來的,您只需要知道這個方法能用來做什么就可以了
最簡單的查找代碼的方式就是您按住command鍵,再用鼠標點擊您要了解的方法,就會進入該方法聲明的界面,這個界面中提供了一個簡單的注釋告訴您是如何使用
如您需要查找的CGAffineTransformTranslate方法
Translate在英文中是轉化、翻譯的意思,在這里做轉化之意,注釋的意思是以參數t(一個CGAffineTransform類型的變量)做參照通過tx和ty來進行控件的偏移,當然這段注釋晦澀難懂,因此如果您想要查看詳細的解釋,您可以選中這一行,點擊上方菜單欄的help,選擇Search Documentation for Selected Text選項,那么您就會進入APPLE的開發者手冊和方法介紹了
做了一個Android app才發現,明明是Android的市場份額比較大,但是朋友圈里面卻是一大堆iPhone的果粉。好吧,那就再學一個新的開發語言吧。為了不要偷懶,于是記錄一下學習過程。
1)以前在大型軟件項目里面,經常費心折騰軟件工程,設計模式,需求管理,版本迭代,團隊協作等等等等,而做一個小項目,很多時候簡單粗暴也挺好。
2)第一步當然還是搭建軟件開發環境。
以前搭建Android開發環境的時候,因為google的網站全部被屏蔽,所以各種麻煩。現在ios開發環境也并不輕松。首先需要一臺MAC電腦,,,,,幸好有聰明的人類發明了虛擬機這種東西,所以作為入門學習,還是先用windows PC好了。VMware 12安裝Mac OS X 10.11:,然后到app store下載安裝XCode開發軟件。
3)還需要一本學習手冊。
我看了下網上有一些教程。視頻教程會比較詳細,但是比較費時間,比如老師講一些你已經知道的東西,你也不知道該快進一分鐘還是10分鐘。所以還是上京東買了本書《ios9開發指南》。以我崇洋媚外的性格通常是買老外寫的書,不過作為入門,這本“編著”的、內容羅列的像手冊一樣的東西,貌似比較符合我現在的需要。另外下載了幾本電子書,比如《iOS開發指南:從零基礎到App Store上架(第2版 )》等。
4)Hello World
好像每種開發語言,都以“hello world”作為第一個教學程序。
所以:啟動Xcode -》新建Project -》根據手冊了解一些選項的含義 -》創建成功。瀏覽一下自動生成的項目文件,語法怪怪的,有一些像“@ - []”之類的東西,感覺跟java或c++都不太一樣。回頭再看手冊,先不管。
在Xcode的工具欄點擊運行按鈕,啟動iPhone虛擬機,出來一個白花花的界面,什么鬼都沒有。
回到Xcode,窗口左邊是project navigator,在項目的各種文件里面翻翻撿撿,找到界面設計文件是Main.storyboard,打開后也是一個白花花的界面。繼續找一下,Xcode界面右下方有各種控件,常用的Label、Button、Text,用鼠標拖放到設計界面上。拖放的過程中,自動顯示各種虛線幫助對齊。選中Label修改其文為“Hello IOS !”。再次運行,一個什么都不做的app就可以了。
回想Android界面設計的時候,需要先指定View的Layout,比如是線性平鋪或者網格等等,控件運行時的位置是跟屏幕的實際尺寸相關的。IOS好像是直接把控件拖到哪里就放在哪里,想一想,有可能蘋果設備的分辨率只有幾種固定的大小,所以萬一ios界面是固定尺寸,也是可以理解的。
5)程序入口點
所有程序必然有一個入口點,ios的程序入口點在一個main.m文件,看起來還算正常,不過最后一個參數是“NSStringFromClass([AppDelegate class])”,有點像java反射機制的感覺。
6)ios程序的大體流程和結構
從入口點開始試著順藤摸瓜,點擊main.m中的函數UIApplicationMain,再到Xcdoe窗口右上方選“?”圖標,就可以看到關于UIApplicationMain的快捷幫助內容。其中最后一個參數的解釋是:The name of the class from which the application delegate is instantiated. bala bala......簡單粗暴來說,這個參數就是我們告訴ios系統,我們的程序啟動時要實例化哪個對象。
再繼續跟蹤下去,點擊代碼中的AppDelegate,右鍵菜單“Jump to Definition”尋找其定義,跳轉到AppDelegate.h。
AppDelegate.h里面有一個@property和一個@interface。@property的類型是UIWindow,估計是指向界面窗口的對象。@interface對象寫的是UIResponder,好像跟事件響應相關。
再對照一下AppDelegate.m,里面有個@implementation,列舉了幾個跟app運行狀態相關的事件回調函數,比如active、background狀態等等。安卓也有app生命周期的狀態遷移和管理,ios的生命周期管理似乎看起來簡單一點。其實我覺得,還是不要生命周期管理比較省心。以前可能手機內存太小,現在內存和SD卡都已經很大了,如果系統能管理虛擬內存,開發可以簡單很多。
另外的文件,ViewController是視圖控制器,Main.storyboard是界面設計,不過還沒看出來它們如何跟app的其它部分關聯到一起。
參考一下學習的內容:
第一階段:Objective-C語言基礎
OC開發介紹,熟悉Xcode開發工具,OC語言基礎,OC流程控制,類的基本概念,面向對象特性,Foundation類庫,OC高級用法,協議和解析。
第二階段:iOS交互開發
基礎UI控件,高級UI控件,視圖控制器,可視化開發與適配,事件處理與手勢,網絡與數據處理。
第三階段:iOS高級進階、
流行技術與特效,系統框架選擇。
第四階段:HTML,CSS與javascript
PC端網站布局,HTML5+CSS3基礎,WebAPP頁面布局,原生javascript交互功能開發,Ajax異步交互,JQuery應用。
第五階段:PHP與MySQL
PHP基本語法。
第六階段:項目開發
自由鋒享項目需求
投入時間和精力,以興趣來驅動學習。不管是視頻學習還是看書學習,在整個的學習過程中貫穿著代碼實戰。看的代碼是別人的,動手寫出來的是自己的。自己動手寫代碼,記憶更加深刻,效率更高。分階段的進行學習:1、看視頻(零掌握,系統的學習和了解),2、看書(對編程有了一定的掌握,作為補充和提高),3、看博客帖子(取長補短)。
在學習過程中書籍資料的話看蘋果的官方文檔,開發手冊,其他的書籍在有了一定的掌握之后,作為補充和太高來學習。