這個例子是 iPhone應用程式開發名師解析 上的一個小例子,基于Xcode4.3.1的工程開發
效果截圖:
1.建立一個新工程叫TipCalculator; File->New->Project ->single View Application -> next.
2.布局界面
其中包含9個靜态Label标簽一個動态Label标簽,他根據slider值的變化而能變化,然後是9個Textfield和一個slider滑動條
另外需要對TextField屬性設定,text設定為0.00,然後鍵盤選擇成Number Pad類型的,隻需要對第一個最長的TextfIeld設定一下鍵盤類型就行,其他的不用設定,其他的8個标簽顯示了灰色數字,設定的是Placeholder屬性;
3.設計代碼,我們選擇左上角的Editor圖示,點選出現視圖編輯框分為XIB檔案,和TipCalculatorViewController.h檔案
如果沒有出現TipCalculatorViewController.h,我們可以根據Automatic檔案進行切換
4.右鍵選中最長的那個TextField檔案拖動到右邊TipCalculatorViewController.h檔案@end前面,
然後彈出一個框框,Connection選為Outlet,Storage選為Strong,
5.這樣我們第一個TextField關聯成功,其他的一樣,
關聯Slider時候,我們對他設定一些屬性,(原本是最小值設為0最大值設為0.3但是我在拖動滑動條時候滑動條總是自動變為0,這樣修改後問題就可以解決了),他還有一個和calculate的關聯方法,
我們還需要添加兩個方法,并聲明一個NSString類的對象
總的代碼為
6.因為本人在拖控件是界面設計的不夠好,彈出鍵盤時會覆寫住下面兩個TextField,是以添加了一個隐藏鍵盤的方法,我們把整個背景View視圖當做一個大按鈕,當輸入完金額後點選背景就會隐藏鍵盤,還是選中XIB檔案,然後把View類修改UIControl,然後打開關聯事件,選中Touch Down
然後會彈出兩個方法,backGrounfTap和calculate(注.原本是想寫成backGroundTap,單詞寫錯了變成backGrounfTap,為了其他地方不再修改,就按照backGrounfTap寫了),xuanzhbackGrounfTap方法,
為什麼隻把三個TextField注冊為了第一響應,完全按照自己意願添加,但是最低我們要保證billField第一個添加上,其他的想添加不想添加都無所謂,隻是個人覺得多添加的兩個體驗會好一點;
7.主要就是calculate方法實作部分
8.當我們輸入時候,有個特别要求,假如使用者小費12元,我們應輸入1200,然後他們會自動變成12.00元,主要通過
通過比較
if
billTotal
使用者輸入數字
else
實作方法,通過比較billField原來字元串長度檢測使用者是否改變金額,來變得小費和總的金額;
本文轉自新風作浪 51CTO部落格,原文連結:http://blog.51cto.com/duxinfeng/1208729,如需轉載請自行聯系原作者