支持自定義的AlertView

近期項(xiàng)目中,UI設(shè)計(jì)增加了個彈窗樣式,打開手機(jī)qq 點(diǎn)贊系統(tǒng) 當(dāng)你點(diǎn)贊次數(shù)超過每日次數(shù)之后 會提示一個窗口,我們項(xiàng)目需要這個彈窗的樣式。找了一些demo都滿足不了需求,最后還是自己寫了一個,主要思路是 觸發(fā)彈窗的時候 將顯示的控件添加到一個背景的view上 最終一行代碼調(diào)用即可 下面上代碼:(顯示部分的ui可自定義 )


自定義方法

self則是整體的背景view 增加點(diǎn)透明度 可以看到底部的內(nèi)容,用戶角度上看就是一個alert

block是為了 在彈窗上點(diǎn)擊之后 觸發(fā)一些操作而設(shè)定的 默認(rèn)設(shè)定的是 彈窗消失,可去除




三種位置的彈窗

頂部? 中間? 底部 根據(jù)需求來使用? dosomeThing是點(diǎn)擊彈窗之后 需要進(jìn)行的操作 比如 跳轉(zhuǎn)頁面 請求接口等 默認(rèn)添加了 彈窗消失的功能 即點(diǎn)擊彈窗之后 彈窗消失 再去調(diào)用block內(nèi)的代碼。


利用枚舉來對控件的顯示位置進(jìn)行區(qū)分

上中下三種 位置可自行調(diào)整


顯示的彈窗整體

self.mainView是彈窗本體 所有彈窗顯示的內(nèi)容都添加到這個View上,當(dāng)然這個也可以自定義大小,背景顏色 背景圖等。


動畫

最后是彈窗顯示 和消失的動畫 需要遵守<CAAnimationDelegate>協(xié)議 動畫類型可以自行更換 猶豫項(xiàng)目中只需要這個樣式的動畫 暫時未封裝。最重要的事 代理方法 動畫結(jié)束后需要移除self。想要demo可到github下載:https://github.com/FormerMonster/AlertView??

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Swift1> Swift和OC的區(qū)別1.1> Swift沒有地址/指針的概念1.2> 泛型1.3> 類型嚴(yán)謹(jǐn) 對...
    cosWriter閱讀 11,674評論 1 32
  • 在iOS中隨處都可以看到絢麗的動畫效果,實(shí)現(xiàn)這些動畫的過程并不復(fù)雜,今天將帶大家一窺iOS動畫全貌。在這里你可以看...
    F麥子閱讀 5,271評論 5 13
  • 重點(diǎn)參考鏈接: View Programming Guide for iOS https://developer....
    Kevin_Junbaozi閱讀 4,712評論 0 15
  • 晚霞向西邊移去,在太陽落山以后,慈祥地將天空映襯著,墨藍(lán)色的云彩包裹著一琉金邊。 好看的事物讓人忍不住多看幾眼,此...
    冬晴子華閱讀 1,577評論 0 1
  • 新系列開啟了!撒花! 前言 終于在準(zhǔn)備(偷懶)了這么久之后,根據(jù)讀者反饋以及自己的一些考慮后,開啟了這次的長篇。 ...
    Ocn閱讀 462評論 0 4

友情鏈接更多精彩內(nèi)容