5月28-懶加載,HUD蒙板,plist數據

基礎UI控件綜合使用

要求:

寫一個程序,類似于淘寶的購物車,用戶點擊添加按鈕,就會把一件商品加入到購物車中,等購物車滿了,可以點擊刪除按鈕刪除購物
車中商品

設計思想:

把UIImageView和UITextView合并放到一個VIew中,然后用這個整體的View進行布局,點擊添加按鈕可以

發現幾個控件是一個整體,可以先建立一個控件容器,然后把需要的控件都合并到這個容器中

  • 這樣可以讓一個控件移動大家一起移動
  • 使用UIView作為父控件,提高效率
  • 通過行號和列號來計算布局
  • HUD 指示器 蒙板 遮蓋
  • 添加提示框,一般使用背景半透明,文字不用半透明
  • 延時調用的方法,可以用多種方法實現
  • 簡書blog
  • 加載plist數據,使用plist文件保存數據
  • 凡是參數名為file的傳遞的都是文件的全路徑
  • 一個NSBundle是蘋果推薦的對象資源包,用來訪問已知隊形的資源包內部的文件,可以用來獲取文件的全路徑
  • 項目里面的資源包,主資源包里面,項目中添加的資源都會被添加到主資源包種
  • 增加資源包得問題,一般來說要同時Copy和鏈接進去
    在項目中經常可能會發現明明文件和資源在項目里面,但是不能使用,很有可能是因為沒有參與編譯和打包,不能使用info.plist
    
  • 懶加載

  • 用到時候在去加載數據,用來提高效率
  • 重寫Get方法,用來解決用得時候在加載
  • 模型是專門用來存放數據的對象
  • 九宮格排版控件算法
    詳細使用
    按鈕狀態的控制
    在需要的時候添加指示器-HUD
    使用plist文件保存數據
    一個NSBundle對象對應一個資源包(圖片、音頻、視頻、plis等文件)
    NSBundle的作用:用來訪問與之對應的資源包內部的文件,可以用來獲得文件的全路徑
    項目中添加的資源都會被添加到主資源包中
    [NSBundle mainBundle]關聯的就是項目的主資源包
    ??? // 加載plist文件
    ??? NSBundle *bundle = [NSBundle mainBundle];

    ??? // 利用mainBundle獲得主資源包中文件的全路徑
    ??? NSString *filepath = [bundle pathForResource:@"shops" ofType:@"plist"];

    ??? // 凡是文件參數為File,傳遞的都是文件全路徑
    ??? self.shops = [NSArray arrayWithContentsOfFile:filepath];
    懶加載
    加載plist數據(比較大)
    懶加載:用到時再去加載,而且也只加載一次
    在調用的時候會用到Get方法
    通過重寫Get方法,來實現懶加載
    // 重寫shops的get方法,實現在調用的時候才加載數據 : 懶加載
    - (NSArray *) shops{
    ??? if (_shops == nil){
    ??????? NSString *file = [[NSBundle mainBundle] pathForResource:@"shops" ofType:@"plist"];
    ??????? self.shops = [NSArray arrayWithContentsOfFile:file];
    ??? }
    ??? return _shops;
    }
    模型
    建立一個類用來封裝數據 : 數據模型類
    instancetype用來定義一個自動獲取返回值類型的函數
    // 使用構造函數方法把數據庫文件內容賦值給自定義數據模型類
    - (instancetype) initWithDict:(NSDictionary *)Dict{
    ??? if (self = [super init]){
    ??????? self.name = Dict[@"name"];
    ??????? self.icon = Dict[@"icon"];
    ??? }
    ??? return self;
    }

    // 類方法用來提供快捷初始化對象方法
    + (instancetype) initWihtDict:(NSDictionary *)Dict{
    ??? return [[self alloc] initWithDict:Dict];
    }
    View的封裝
    layoutSubviews的調用
    這個方法專門用來布局子控件,一般在這里設置子控件的frame
    當控件本身的尺寸發生改變的時候,系統會自動調用這個方法
    - (void)layoutSubviews
    {
    ??? // 一定要調用super的layoutSubviews
    ??? [super layoutSubviews];

    ??? CGFloat shopW = self.frame.size.width;
    ??? CGFloat shopH = self.frame.size.height;
    ??? self.iconView.frame = CGRectMake(0, 0, shopW, shopW);
    ??? self.nameLabel.frame = CGRectMake(0, shopW, shopW, shopH - shopW);
    }
    UIButton、UIImageView、UILabel的選擇

    最后編輯于
    ?著作權歸作者所有,轉載或內容合作請聯系作者
    平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
    • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
      沈念sama閱讀 228,030評論 6 531
    • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
      沈念sama閱讀 98,310評論 3 415
    • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
      開封第一講書人閱讀 175,951評論 0 373
    • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
      開封第一講書人閱讀 62,796評論 1 309
    • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
      茶點故事閱讀 71,566評論 6 407
    • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
      開封第一講書人閱讀 55,055評論 1 322
    • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
      沈念sama閱讀 43,142評論 3 440
    • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
      開封第一講書人閱讀 42,303評論 0 288
    • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
      沈念sama閱讀 48,799評論 1 333
    • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
      茶點故事閱讀 40,683評論 3 354
    • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
      茶點故事閱讀 42,899評論 1 369
    • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
      沈念sama閱讀 38,409評論 5 358
    • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
      茶點故事閱讀 44,135評論 3 347
    • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
      開封第一講書人閱讀 34,520評論 0 26
    • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
      開封第一講書人閱讀 35,757評論 1 282
    • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
      沈念sama閱讀 51,528評論 3 390
    • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
      茶點故事閱讀 47,844評論 2 372

    推薦閱讀更多精彩內容