2011年12月14日 星期三

IPhone專案從VM複製至MAC電腦執行fail

原本我在Windows7 上的 VM 掛載 MAC 虛擬環境開發IPhone專案,現在我把VM裡的程式碼複製至真正的MAC電腦做後續的發開,卻遇到以下Fail訊息:







有兩個可疑點:
1.畫面上 Failed 字樣,就知道出問題了。
2.左上角的Sheme「My Mac 64-bit 」 非常奇怪。
3.無法執行 RUN 功能。

解決方法:

原來專案的名稱在VM裡已被我改掉了,複製到MAC機器可能有一些設定不完整,所以要針對Sheme校正即可。

1.選擇[Manage Schemes]



2.現在的Scheme名稱是舊的,可執行右上角的[Autocreate Schemes Now]















3.這時後XCODE會幫我們重新產生正確的Scheme名稱。

4.刪掉舊的Scheme,要注意新的Scheme要打勾,執行[OK]。


5.如下圖,通常在開發時選擇Simulator即可。









這樣就OK啦~  這是小問題,開心玩APPLE吧!




 

 

Mac OS 安裝嘸蝦米輸入法

Mac OS 安裝嘸蝦米輸入法

沒有無蝦米輸入法對我來說就好像腳不能跑步一樣,好險在網路上找到決解方案。

1. 首先下載一個嘸蝦米的cin檔,網址: http://webhd.xuite.net/_oops/hsu.anson/djq

2.把下載的檔案放至Input Methods資料夾裡,路徑:電腦 / Macintosh HD / 資源庫 / Input Methods

3.系統偏好設定裡面打開輸入法,選取嘸蝦米




4.按 Command+空白鍵,切換為嘸蝦米 。





2011年12月1日 星期四

[Xcode 4] 學習 StoryBoard – 1

 

Peggy Yang的學習筆記


[StoryBoard 簡介]

Storyboard 這個東西一般來說是在做創意發想的時候,用來將自己的想的一些故事情節畫成像是連環漫畫一樣,就像分鏡腳本,這種方法是我大學看傳管的同學會用到的,沒想到Apple也如此活用,真的很有趣。
 

[StoryBoard 帶來的改變]

Iphone的程式大概只有一個月多的時間,以前都是直在新建ViewController並附帶.xib檔來搭配視覺化的編排,所以有AviewController.hAviewController.mAviewController.xib這三個檔為一組,當A畫面要串到B畫面,在程式裡寫上

[self.navigationController pushViewController:BviewController animated:YES];

B畫面要回到A畫面,再寫上

[self.navigationController popViewControllerAnimated:true];

所以可想而知,當所開發的App有很多頁面的話,很難一目瞭然App在說什麼故事,就連我這個開發的作者來說,腦容量不大哪會記得這些,之後會造成難交接給別人,也很難維護的冏境。

好吧! 之前那一支App就當練習,以後可以好好利用StoryBoard來改進這點。

[StoryBoard 實作]

這是很簡單的實作,很適合像我這個初學者玩玩StoryBoard,看裡面賣什麼膏藥。

學習大網如下:

1.    新建StoryBoard範例程式

2.    StoryBoard長什麼樣?

3.    StoryBoard新增場景

4.    設定StoryBoard Segues連結

5.    設定StoryBoard Segues轉場效果


1.    新建StoryBoard範例程式

1.1 Xcode4裡新建一個Project,選擇[Single View Application]


1.2 設定專案名稱,請在product name class prefix 設定storyBoard, 並且下方的[Use Storyboard]一定要勾選。



2.    StoryBoard長什麼樣?

2.1 在左方總管中點選 [MainStoryboard.storyboard] 你就可以看到右邊出現 一個往右的箭頭 和一個空空的ViewController。這個就表示此ViewControllerApp呈現的第一個畫面。


2.2 點選ViewController,設定背景顏色。在右方的Object Library拉一個Lable button到畫面上,並設定顯示文字,如下圖:

Ps.如果你發現找不著Object Library,可以從工具列叫出來:View -> Utilities -> Show Object Library


3.    StoryBoard新增場景

Object Library拉一個view controller object,這個就是第二個頁面。在這個頁面上重覆2.2的步驟,如下圖:


4.    設定StoryBoard Segues連結

4.1         Scene1的按鈕按下去,要如何跳至Scene2?

按著[Ctrl]鍵不放,滑鼠從Scene1的按鈕 拉到 Scene2 的畫頁上(這時後會有藍藍的關連線),放掉滑鼠後就會出現如下圖的[StoryBoard Segues]選項,請選擇:Modal


很好,設定後就會發現Scene1Scene2之相就有了關係了,這稱之為Segues line。你還沒有寫code,但程式就知道你按了Scene1的按鈕就會跳至Scene2



4.2         同樣的如法泡製Scene2的按鈕 拉到 Scene1 的畫頁上,就會出現如下圖:



5.    設定StoryBoard Segues轉場效果

很有趣唷~很像用影音編輯軟體,可以設定轉場的效果。

5.1     選擇Segues line,在其屬性視窗可以設定。這時後你可以Run你的App,去感受這四個轉換的效果。


還沒有寫code~ 你已經透過StoryBoard編劇本、說故事了喔~

這是再單純不過的範例,故事要由你的創意去發揮,好好利用!








2011年11月30日 星期三

WIN7要如何開啟隱藏檔

有兩個方法可以參考~


1.在任何資料夾中,請按一下Alt鍵,上方視窗會出現[工具列]
接著點選[工具]=>選擇[資料夾選項]=>接著在[檢視]頁籤中可以看到[隱藏檔案和資料夾]選擇[顯示隱藏的檔案、資料夾及磁碟機]也可以唷。


2.在任何資料夾中,點選左上角的[組合管理]=>選擇[資料夾和搜尋選項]=>接著在[檢視]頁籤中可以看到[隱藏檔案和資料夾]選擇[顯示隱藏的檔案、資料夾及磁碟機]



[C#] 畫縮圖詭異的情況

 Peggy Yang的學習筆記




因為工作上的需要,要把使用者手繪的圖先處理為縮圖,再印至出來。
不過就在印出來的時後出現讓我很confuse的事情。

*_Image 是原圖檔

Image printImage = _Image.GetThumbnailImage(
                                                            Width,
                                                            Height,
                                                            null,
                                                            IntPtr.Zero
                                                       );
pGraphics.DrawImage(printImage, new Point(pLocation.X, pLocation.Y - 8));

這樣的結果在我 win xp 32bit的環境下,列印得情況有誤,如下圖(上方手繪的軌跡圖):












一模一樣的程式在我 win 7 64bit的環境下,列印得情況正確,如下圖(上方手繪的軌跡圖):














這樣我非常的不開心,怎麼會發生這種[掉漆]的情況,明明一樣的code竟然有不同的反應。
本來想要放棄的,但是這是要安裝在客戶端的應用程式,誰知道使用者的環境是什麼情境,讓我心裡擔憂的很,後來左查右查,上試下試,一度懷疑是GetThumbnailImage的問題,也懷疑是解析度的問題,try到最後就從DrawImage下手,終於找到一勞永逸的方法。

只要DrawImage在的方法裡,指定畫圖的寬及高即可。

Image printImage = _Image.GetThumbnailImage(
                                                             Width,
                                                             Height,
                                                             null,
                                                             IntPtr.Zero
                                                 );
pGraphics.DrawImage(printImage, pLocation.X, pLocation.Y - 8, printImage.Width, printImage.Height);

2011年11月15日 星期二

在MAC上安裝無蝦米

我一直都是用無蝦米輸入法,之前在MAC上只能用注音,對我來說還真的是滿吃力的。
今天趁比較有空就來突破一下冏境,終於讓我順利又爽快的打中文字了 耶~

參考作法:
http://macuknow.com/node/5087

2011年11月2日 星期三

IPhone - Objective C 學習參考網站




    iOS开发者















Using TBXML have Link error

using TBXML have the error:

Undefined symbols for architecture i386:
  "_deflateInit2_", referenced from:
      -[ASIDataCompressor setupStream] in ASIDataCompressor.o
  "_deflateEnd", referenced from:
      -[ASIDataCompressor closeStream] in ASIDataCompressor.o
  "_deflate", referenced from:
      -[ASIDataCompressor compressBytes:length:error:shouldFinish:] in ASIDataCompressor.o
  "_inflateInit2_", referenced from:
      -[ASIDataDecompressor setupStream] in ASIDataDecompressor.o
  "_inflateEnd", referenced from:
      -[ASIDataDecompressor closeStream] in ASIDataDecompressor.o
  "_inflate", referenced from:
      -[ASIDataDecompressor uncompressBytes:length:error:] in ASIDataDecompressor.o
  "_OBJC_CLASS_$_OMAppMeasurement", referenced from:
      objc-class-ref in OmnitureService.o

ANS:
1 [Link Binary With Libaries] Add libz.1.5.dylib
http://stackoverflow.com/questions/7118474/help-me-out-with-error-deflateinit2

2.Add Libraries - step by step:
http://allseeing-i.com/ASIHTTPRequest/Setup-instructions