swift 分享share頁面封裝 功能按鈕不同

2022-06-02 23:15:20 字數 1696 閱讀 6290

關於分享功能的頁面應該有很多,寫這篇swift版本的分享頁面,根據不同模組可能分享的功能按鈕不一樣,引言:

在封裝專案效果如下,裡面的內容,可以自行在列舉中新增(下面**會說到)- 

黃色內容是提示語,放在uilabel中

紅色內容是分享的平台,可以滾動,放在uicollectionview中

綠色內容是功能模組,可以滾動,放在uicollectionview中

藍色內容是取消按鈕,放在uibutton中

對於上面的布局,估計很多人都會布局成功,重點講述一下,自己專案中怎麼封裝出來不同模組,分享頁面不一的情況!下面是**的主體結構:

xyshareenum用於存放分享平台、功能按鈕以及使用場景內容和判斷!

1.1 首先看一下分享平台設定

如下圖:

通過這個列舉設定分享平台,可以自行選擇設定分享的內容.

1.2 然後看功能選項按鈕

如下圖:

利用的同樣的方法結構,新增功能性按鈕選項,可以根據需求增加需要的功能按鈕,並匯入.

1.3 最後使用場景列舉

xyzshareviewcontroller 用於頁面布局展示,以及處理響應的點選事件

首先定義tools,代表功能性按鈕選擇,存放xyzsharetoolenum的列舉功能選項,type:用於存放平台的選擇,代表basic與myitem兩個選項,block:

clickitemhandle用於點選某乙個item.

上面的collectionview用於分享平台的展示,下面的toolscollectionview存放的是功能性按鈕.

上面的convenience init方法用於接受使用場景,下面的類方法show,用於在適合彈出分享頁面的時候呼叫

在資料來源方面處理的**如下:

用於顯示功能和平台展示的區別和賦值.

xyzshareinfo: 用於在uicollectionview中did事件處理,點選某個item分享內容

在viewcontroller中,點選分享按鈕,彈框顯示,**如下:

發現函式返回時xyzshareinfo,在裡面處理要分享的內容

上面就是公司專案中在不同場景使用不同分享頁面的封裝

**git:    

希望對大家在專案中思路和解決問題有所幫助,謝謝

PopupWindow分享頁面

效果圖 步驟 1.布局中新增分享按鈕 2.畫出分享頁面 3.設定分享頁面animator進出動畫,並在style.xml中配置 4.mainactivity中新增方法 畫出布局 主頁面 android id id share android layout width wrap content and...

分享 nuxt頁面

頁面元件實際上是 vue 元件,只不過 nuxt.js 為這些元件新增了一些特殊的配置項 對應 nuxt.js 提供的功能特性 以便你能快速開發通用應用。vue school出品的 nuxt.js 頁面元件 的免費課程 red hello h1 template export default fet...

Swift函式式程式設計二(封裝Core Image)

core image是乙個強大的影象處理框架,但是api略顯笨拙。它的api是弱型別的,通過鍵值編碼 kvc 來配置影象濾鏡 filter 的,在使用引數的型別或名字時,都使用字串來進行表示,這十分容易出錯,極有可能導致執行時錯誤。因此打算利用型別來規避這些問題,最終實現一組型別安全且高度模組化的a...