(7)、九宫格计算
使有九宮格方法計(jì)算位置來解決這個(gè)問題:
只計(jì)算出一個(gè)X值的效果圖如下:
處在同一列的控件的x值相同,處在同一行控件的y值相同
只需要算出它們的行號(hào)和列號(hào)就能知道他們的位置
這樣設(shè)置后發(fā)現(xiàn)狂點(diǎn)后,添加的控件會(huì)超出白色視圖
解決方法可以使用裁剪方法:
雖然用了裁剪,但用調(diào)試工具還可以看得見
接著做添加不同的商品,要做出如下效果:
通過數(shù)據(jù)的存取,來獲取不同的數(shù)據(jù)
效果圖如下:
使有文檔注釋的好處:使用文檔注釋,然后在使用它的時(shí)候在提示中會(huì)提示出添加的注釋:
只添加6個(gè)數(shù)據(jù),當(dāng)點(diǎn)擊添加按鈕到六個(gè)的時(shí)候,再次添加時(shí)就會(huì)出現(xiàn)閃退,解決這個(gè)問題的方法如下:就得在操作添加和刪除按鈕的時(shí)候進(jìn)行控制:
聲明添加按鈕屬性:
在創(chuàng)建的時(shí)候直接將返回UIButton類型的對象賦值給添加按鈕和刪除按鈕:
然后在add添加方法中進(jìn)行設(shè)置:
效果圖如下:
設(shè)置在程序加載視圖完畢后就先禁用刪除按鈕:
刪除按鈕方法:
完整的代碼如下:
這樣就實(shí)現(xiàn)了當(dāng)白色視圖中有控件時(shí),刪除按鈕就可用,當(dāng)沒有時(shí)就刪除按鈕就不可用,當(dāng)白色按鈕里的控件數(shù)量小于數(shù)組中的數(shù)量時(shí),添加按鈕就可用,當(dāng)?shù)扔跁r(shí)添加按鈕就不可用。
接下來做顯示指示器,當(dāng)添加滿了的時(shí)候和刪除完了的時(shí)候做個(gè)提示顯示:
通常把顯示器稱為:HUD指示器、蒙板、遮蓋
設(shè)置storyboard中控件的名稱,方便識(shí)別,如下操作:
隱藏label控件的三種方法
可以設(shè)置隱藏屬性,透明度或直接將它刪除
以上設(shè)置代碼的效果相應(yīng)于storyBoard中的如下設(shè)置
如果要在storyboard中改變label到白色視圖的中間位置,不要直接托動(dòng)它,因?yàn)橥袆?dòng)它讓它成為所有商品視圖中的子控件,只能通過在storyboard中改變它的, 改變它的Y值,這樣才不會(huì)改變它的層級(jí)關(guān)系
先將label設(shè)置為透明,再將它進(jìn)行連線
運(yùn)行效果如下:
將label設(shè)置成黑底白色的樣式
如果要設(shè)置成半透明,而如果直接將label的alpha設(shè)置成半透明,發(fā)現(xiàn)文字也成了半透明了,所以得將它的背景色設(shè)置半透明才行:
再次查看運(yùn)行效果如下:
實(shí)際中的用法:就可以實(shí)現(xiàn)了背景色半透明,而文字不會(huì)跟著透明
效果圖如下:
接著做隱藏顯示器HUD
觀察是否兩秒后調(diào)用hidenHUD方法
然后在隱藏HUD方中設(shè)置隱藏HUD顯示提示
也可以使用如下方法
參數(shù)repeats:YES為重復(fù)
將相同的代碼抽取出來
總結(jié):
總結(jié)
- 上一篇: 我的“网管工具箱”
- 下一篇: log是什么?log怎么打开?