電子會員卡(獨立開發個人項目),會員卡獨立開發
電子會員卡
開發環境:MacOS10.10
開發工具:Xcode6.4
第三方架構:友盟分享,LXActionSheet(自己修改了介面屬性),ASI,SSZipArchive,KVNProgress,MJRefresh,FMDB,Colors等。
主要技術:多種控制器嵌套、自訂UI控制項、自訂Delegate、網路處理(ASI)、SQLite資料庫操作(FMDB)、多線程(GCD)、Quartz2D、社交分享(Umeng)、推送、第三方架構的修改使用、Auto Layout自動布局和相機相簿的使用等等。
軟體開發背景:
自學iOS一陣子了,跟著教程學習或多或少有一定的依賴感,從Objective-C到iOS SDK,到現在也不知道自己掌握了多少,因此特此獨立寫了這個軟體,驗證鞏固下自己學習的情況,順便把這個拿過去找工作做示範。
從開始寫到結束,大概花了3周時間,大概5000多行代碼,中間也有些模組的大幅度調整過,感受就是一定要先決定好方案,再動手,不然又是白搞。
工程結構:
軟體簡介:
電子會員卡是一款從客戶的角度解決了出門帶各種各樣的會員卡的煩惱,並可以自助查詢積分等資訊,從商家的角度降低了發卡成本和更方便宣傳促銷活動的應用。商家如有優惠活動,可以向會員推送訊息,提升會員卡的使用價值。
客戶將會員卡資訊從網上下載或者從本地匯入,一個“電子會員卡”軟體在手,不怕忘帶會員卡,再也不會錯過各種優惠活動了。
商家也不需要大量的金額製作卡片,發卡等繁瑣的事情,只需在電腦上填入會員資訊就能搞定。尤其促銷活動的時候,更不需要拉著橫幅開著卡車去大街上播放喇叭了。只變得推送訊息那麼簡單了。
功能介紹:
軟體有3個大模組組成,“優惠廣場”,“我的會員卡”和“訊息”。
第一次安裝軟體,那麼一啟動就顯示註冊介面,如。
註冊成功後,首頁就變成如;
1.在尚未註冊情況下,左上方有個“註冊”按鈕,註冊成功後隱藏。
2.找回密碼:該功能是如果密碼忘記了可以通過密保問題找回密碼目的。
3.頭像:頭像是通過quartz2D將圖片剪下後顯示的。
4.右箭頭的登入按鈕:預設情況下是灰色的,不可點擊的,只有在輸入帳號和密碼後才顯示可以點擊狀態。
一,優惠廣場
優惠廣場是商家有優惠活動時訊息推送到這裡的,由於本人沒有伺服器開發,裡邊的資料是本地的,類比的資料,資料存放區在plist當中。介面如。
1.是個tableViewController做的,主要的是自訂tableViewCell,純程式碼實現的cell。該控制器工程MVC結構如下。
1.1 cellModel模型,是資料模型,包含如下屬性和一個類方法,一個對象方法。
//打折資訊@property (nonatomic, copy) NSString *cutOff;//啟用時間段@property (nonatomic, copy) NSString *cutDuration;//具體內容@property (nonatomic, copy) NSString *detailText;//圖片@property (nonatomic, copy) NSString *image;//參與人數@property (nonatomic, copy) NSString *involvementNum;//發布時間@property (nonatomic, copy) NSString *time;//地點@property (nonatomic, copy) NSString *address;//針對人群@property (nonatomic, copy) NSString *people;//電話@property (nonatomic, copy) NSString *phoneNumber;@property (nonatomic, copy) NSString *partinFlag;;- (id)initWithDict:(NSDictionary *)dict;+ (id)cellWithDict:(NSDictionary *)dict;
1.2 CellFrame是建立每個控制項的frame的
1.3 Cell是串連Frame和Model的,它使cell變得有血有肉。
1.4比如我要參與沃爾瑪的優惠活動,點擊“參與”,則彈出一個alertView,需要輸入提醒訊息的標題。
點擊確定後訊息就被記錄了,將在“訊息”中顯示,到啟用時間會提醒。
1.5分享,如果你需要分享一條優惠活動,點擊該條訊息“分享”,目前用的是umeng的第三方社交分享SDK,由於很多分享平台都需要註冊申請AppKey,只做了一下幾個。
註:分享按鈕是通過delegate來做的,該按鈕在cell身上,分享也是cell本身的事情,可以分享cell的模型資料即可,但是無法將分享的彈出介面顯示到cell身上,因此,當cell的分享按鈕被點擊了告訴tableviewControler,讓它顯示分享介面。當然前提是tableviewControler遵守了該協議。
二,我的會員卡
設計登入使用者名稱和密碼輸入框在下半屏,鍵盤彈起會擋住輸入框,因此做了調整,如。
登入後,如果沒有可用會員卡時顯示介面如下。
如有可用會員卡,則顯示會員卡資訊,可以對會員卡進行建立,編輯,排序,刪除等操作。當然,積分是不能編輯哦!
2.1設定
設定由兩個部分組成,“帳號與安全”和“關於我們”
2.1.1 帳號與安全
2.1.1.1 帳號只是顯示的,不可以點擊
2.1.1.2 修改頭像,可以從拍照,相簿,照片庫裡選擇
2.1.1.3 修改密碼和密保問題就不說了,都是跳轉了一個控制器實現的。
2.1.1.4 記住帳號。
2.2關於我們
該部門由3個部分組成,“評分支援”,“分享”,“反饋”。
2.2.1 評分支援,不支援,軟體沒有上線嘛。
2.2.2 分享,舉例分享。
2.2.3反饋是通過郵件反饋問題的。
---end
著作權聲明:本文為博主原創文章,轉載請註明來源:http://blog.csdn.net/zhangwenhai001