最近小編在學習IOS開發,感觸頗深,看到了iOS里面封裝了好多組件,很多組件都是iOS自帶的,相信一般的小公司的產品經理都是按照iOS的交互來設計UI,而且還要求Android要和iOS統一風格,這讓Android開發人員很頭痛,iOS自帶組件很容易實現,而Android可能需要重寫控件去配合iOS的效果。其實這樣必然會導致性能的小將,或有些許的卡頓。小編個人認為,按照各自系統的風格和規范進行設計才能把自己的優點發揮到最大化。 下面就引出了今天的主題,自定義組件ListPopWindow,iOS中,這個效果是自帶的。PopWindow可以說在項目里用的比較多的了,可能有n處要用到PopWindow,那么自定義一個PopWindow,到處來用更方便一些。 先看一下效果:
這里寫圖片描述
1.自定義PopWindow
首先我們分析一下,這樣的效果肯定是一個PopWindow嵌套著listview,而上面的title、和下面的cancel是兩個文本框,實現起來也比較簡單。 然后我們在PopWindow中聲明兩個接口,用來回調cancel和item的點擊事件
然后再設置一些PopWindow的一些屬性
3.自定義adapter適配器
這里面可能要注意的就是item的背景設置,有的是上半部分圓角、有的是下半部分圓角,特殊處理一下
最后看一下調用
Activity需要實現item接口(OnPopItemClickListener)和底部按鈕接口(OnBottomTextviewClickListener)
詳細源碼分析在
http://blog.csdn.net/lyhhj/article/details/50582900
最后小編附上github源碼地址,小伙伴們可以直接用哦。 https://github.com/Hankkin/ListPopwidowDemo