快訊!我的新書今天開始可以在天瓏網路書店預購啦!歡迎大家前往訂購!
>>>> AI 職場超神助手:ChatGPT 與生成式 AI 一鍵搞定工作難題 <<<<

APP開發

  • UIView及繪圖練習範例APP

    作業目標:Youtube操作影片 練習原始碼:homework0803 這個作業主要是在練習對view以及簡單的繪圖的操作,還有timer的使用 因此我截錄一些我覺得是練習關鍵的程式碼 下面的是viewController的相關程式碼 一個個出現的程式碼,按下show按鈕時觸發 取得圓圈排列坐標的程式碼,傳入值為圓半徑及角度 下面的程式碼則是在被新增的UIView物件裡面 顯示動畫,這邊要注意的是因為定位點的關係,由於我們希望元件的縮放是以view的中心來做縮放 所以改變的值是self.bounds,一般我們在做元件內部繪圖事件,都會使用self.bounds 而self.frame則是在外部設定物件資訊時使用。 另外,因為- (id)initWithFrame:(CGRect)frame被呼叫的時間是在circle被新建的時後,而不是在被加到畫面時, 為了落實動畫的被執行時間,所以我又實作了layoutSubviews這個方法, 並加上BOOL init當今天是第一次被呼叫時,才會執行playAnimation 然後實作按下後縮小離開時恢復大小的功能 原始碼下載:homework0803

  • 上課筆記(五) – UIView操作及繪圖介紹

    view介紹 UIWindow是會在一開始便被xcode建立起來,裡面有很多view。 View的操作: 於上層操作subview: 在supervview裡是用MutableArray的index去管理subView,這index就是tag,tag=0是代表subview自己。 [self addSubView: view];//新增view [self insertSubView: view atIndex:0];//新增view在layer0 [self insertSubView:view belowSubview:upView];//新增view在upView之下 [self insertSubView:view aboveSubview:upView];//新增view在upView之上 [self exchangeSubviewAtIndex:0 withSubviewAtIndex:1];//將第0層的物件和第1層的調換 UIView view = [self…

  • 切換View會用到的函數

    切換UIViewController的兩種方式 1. 有NavigationController時 方法一:右側進入 返回到上一頁 方法二:下面切入 返回到上一個UIViewController 2、没有NavigationController的切換方法 返回到上一個UIViewController 取得子viewController或父ViewController的方式 假設View A是來源的ViewController,而View B是目標ViewController。 1.取得子viewController 2.取得父viewController 其中括號和類名是一種強制轉類型的用法。

  • 簡易記帳APP範例

    source code在此:範例檔案下載AppPrototype 難得周日在家,就把昨天老師說的練習做完 老實說其實我弄很久(大概有八~九小時跑不掉= =) 可見真的很不熟悉,debug之類都超級慢的 首先就是在跳去圖表的地方, 原本在實作實際功能前可以正常出現圖表,後來不知為何會當掉, 光這個無聊的bug就找了兩三小時(遮臉) 後來發現是因為下面這段程式碼 因為只要是storyboard控制的頁面切換,都會呼叫prepareForSegue 我同時用storyboard去切換新增資料和圖表頁面, 所以圖表的segue.destinationViewController不是InputViewController就會跳錯誤。 在這邊也要說,老師說的inputCon.delegate等於setDelegate是很重要的 因為錯誤訊息一直說沒有setDelegate這個方法 結果我還一直傻傻看不懂是什麼意思~>”<~ (老師上課有說!妳有沒有在聽阿!) 然後第二個遇到的困難,就是我要在轉圖表畫面時,需要把現有資料傳至圖表畫面 一開始我還傻傻的在那又把CostViewController弄一個@protocol 想說要實作一個delegate機制,又是一方面要實作別人的delegate,又要是別人的protocol, 搞得我好混亂阿~ 後來才發現delegate似乎是被呼叫者,要把資料傳給呼叫者時才需使用(不確定,有錯請指正) 後來為了要傳遞資料,我不去使用storyboard的切換頁面方式,改使用程式去自行切換頁面 以下為傳送列表資料的程式碼 【附記一下切換viewController的相關方式】…

  • 上課筆記(四) – Naming Convention、記憶體管理

    Naming Convention 命名原則: 具解釋性 清楚 不會混淆 類別名稱: 第一個字大寫 前置namespace(在新增專案時會有Class Prefix,就是在設定這個) 駝峰式的寫法 變數名稱 變數類型不需特別表明,可以用名稱去讓人聯想型別,例: BOOL isEditable; NSString * accountName; NSMutableArray * mailBoxes; UIImage * previewPaneImage; NSDictionary…

  • 上課筆記(三) – Operation、Delegation、基本類別介紹

    Operation 取得class資料的相關變數 確認兩個變數指向同一個記憶體位置 確認兩個實體的值相同 呼叫物件的描述,回傳字串 [obj description];//等於NSLog(@”%@”,obj); Delegation 定義:物件要完成某件行為時利用別人定義好的某項功能來完成。 所以專案第一個被呼叫的應該是Delegate裡的 xcode專案的main.m 基本類別 NSObject:最基本的物件 [obj className];//自我檢視 [obj isEqual:obj2]//物件比較 NSString NSMutableString:可在原本字串之間插字串(用insertString) Set:無順序性的集合,資料有惟一性(物件要比較是否相同須覆寫isEqual和hash) NSMutableSet:queue的概念,用在List把移出畫面的東西暫存。 NSOrderedSet:依照加入的順序排(比起NSMutableSet) 相關網頁: http://stackoverflow.com/questions/6545722/help-with-isequals-and-hash-in-iphone Array:有順序性的集合,當資料從中間刪除,剩的index會自動往前補。…

  • 上課筆記(二) – Objective-C語言介紹、物件存取

    Objective-C語言 @代表物件 [@”Hello world”] => 方括弧是存取物件裡的方法 例: Class:類別 Object:物件及實體,包括 (a) 名字(Name) (b) 屬性(State):field, attribute, member, 屬性, 狀態, 成員 (c) 行為(Behavior):method, action, member function Message:使用方來傳遞訊息。例:NSString的StringWithString PS:…

  • 上課筆記(一) – 專案運作流程、c語言概論、指標與物件

    課程資訊 上課教師:潘聖文 Michael Pan ( scentsome@gmail.com) > 認真好老師推! 課程名稱:資策會IPhone應用軟體開發入門篇 運作流程 main function為固定進入點 在iphone app開發裡面,一個一整頁的畫面是Scene,會有對應一個Controller 切換不同Scene的叫做View Controller,跳出如輸入框或選取框的這種(非整頁切換),則不需View Controller Navigation Controller是只有上面的Bar(用以控制頁面切換),會將View Controller塞進裡面。 所有Object特有的類別都會加上NS開頭(因為是某個縮寫為NS的公司開發的) Objective-C可以在執行時動態產生Code。 整個Design Flow圖如下 開始之前…

  • 使用Flex編譯出ios的ipa檔案

    這邊提供一些我看到的教學影片及連結 1.在Windows上一步步發佈的方式 http://support.brightcove.com/en/docs/step-step-guide-publishing-apple-app-store-using-windows 2. 使用Flex編出ipa的教學 http://tv.adobe.com/watch/adc-presents/build-ios-applications-using-flex-and-flash-builder-45/ 3. 怎麼在windows上產生.p12檔案 4. 在Flex裡安裝AIR SDK的方式 http://helpx.adobe.com/flash-builder/kb/error-run-debug-deploy-ios.html http://www.flashdeveloper.co/post/10985842021/overlay-adobe-air-32-in-flash-builder-46 其實最基本的可以就依照這篇文章去做一步步的發佈設定 如果不想太快買開發者身份 也可以到google 打上fake .p12 ,下載破解檔案 就可以直接做發佈的設定了! =================================== 另外也提供不使用flex去做發佈的方式 1.安裝 adobe AIR…

  • 外行人也能學會的App企劃法

    最近買了這本書: http://buy.yahoo.com.tw/gdsale/gdbksale.asp?gdid=3639539 這本書在第一張的地方,先說出App與一般的電腦程式最大差異點在於『行動性』。 因此好的APP應具備下面幾個特質: 1. 簡單上手 2. 目的單純(一次做一件事) 3. 流暢度和穩定度 在做APP之前要先問自己下面幾個問題: 1. 為什麼要做APP而不是網站,找出做APP的意義。 2. 然後找出APP要扮演的角色,是附屬在某個服務如dropbox,或是一個獨立的服務如Line、或者是一個行銷、廣告的工具。 3. 預期這支APP可以解決什麼問題? 4. 鎖定目標族群 5. 產品所能帶來的效益 在企劃自己的APP之前,應要多去看別人的APP,以下面幾項去切入剖析 1. 是否有善用行動裝置的特性,提供一般網站無法滿足的訴求 2.…


17年資歷女工程師,專精於動畫、影像辨識以及即時串流程式開發。經常組織活動,邀請優秀的女性分享她們的技術專長,並在眾多場合分享自己的技術知識,也活躍於非營利組織,辦理活動來支持特殊兒及其家庭。期待用技術改變世界。

如果你認同我或想支持我的努力,歡迎請我喝一杯咖啡!讓我更有動力分享知識!