欧美vvv,亚洲第一成人在线,亚洲成人欧美日韩在线观看,日本猛少妇猛色XXXXX猛叫

新聞資訊

    今天給大家推薦一個自由拖拽,自由組合的控件,這個控件是我自定義寫的。通過它,我們可以自由拖拽,自由組合實現一個界面,滿足一個用戶自由組合界面的需求。這里不是通過自由拖拽控件,來快速開發一個界面,而且更人性化的讓用戶去自由組合一個界面。

    前言

    最近有一個項目,有一個主界面,界面上有很多控件或者有多個 組成,大小不一,而且由于用戶需要,需要自由拖動和自由組合,形成用戶自己需要的組合成的模樣。所以就寫了一個 ,只要在 下,寫入了多個視圖,就可以自由拖動和組合了。 本質上是一個相對布局,所以初始位置都可以自己按相對布局的方式來定義,然后用戶手動拖動后,會自動記錄每個子視圖的位置,進行保存,等到重新加載后,會按照記錄的位置進行布局。

    效果圖

    說一千道一萬,不如看實踐,那就一起來欣賞一下效果圖的效果如何吧?

    c#web設計中視圖的布局表格_c#web設計中視圖的布局表格_access數據表視圖和設計視圖

    你們感覺如何?

    實現思路 首先

    首先,我們來想想,要是實現各個子控件和視圖之間的拖拽和交換位置,那這就意味著所有的子視圖和控件必須在一個層級之內,否則跨層級的拖拽是非常難實現的。所以第一個思路就是:

    access數據表視圖和設計視圖_c#web設計中視圖的布局表格_c#web設計中視圖的布局表格

    使用相對布局

    使用相對布局,其實可以滿足所有控件都在一個層級之內的,而且可以滿足我們初始的任何樣式的布局。況且相對布局是 官方推薦使用的布局。

    其次

    其次,就該討論拖拽的問題了,如何實現拖拽呢?有沒有更好的,簡單的方式呢?難道只能自己實現觸摸事件,判斷是哪個控件,計算 X , Y 坐標移動呢?非也,其實有簡單的好辦法。那就是:

    c#web設計中視圖的布局表格_c#web設計中視圖的布局表格_access數據表視圖和設計視圖

    使用

    是一個非常棒的東西,好用,簡單,不需要你去計算。2013年谷歌 I/O 大會上介紹了兩個新的 : 和 ,現在這兩個類被廣泛的運用,其實研究他們的源碼你會發現這兩個類都運用了 來處理拖動。 是 中不為人知卻非常有用的一個工具。

    解決了 中手勢處理過于復雜的問題,在 出現之前,側滑菜單都是由第三方開源代碼實現的,其中著名的當屬 , 重寫 方法來實現側滑效果,代碼量很大,實現邏輯也需要很大的耐心才能看懂。如果每個開發人員都從這么原始的步奏開始做起,那對于安卓生態是相當不利的。所以說 等的出現反映了安卓開發框架已經開始向成熟的方向邁進。

    關于 的具體用法,這里不過多贅述,想了解的,在網上一搜,有非常多的文章都在介紹它的基本使用方法。

    access數據表視圖和設計視圖_c#web設計中視圖的布局表格_c#web設計中視圖的布局表格

    再次

    再次,我們該如何把拖動的視圖的位置,保存住呢?又該如何在重新打開應用的時候按照我們自己組合和重新排列的布局顯示呢?其實方法也一樣很簡單,那就是:

    記住每個子控件拖拽后的位置,并保存,在 方法中,讀取記錄的位置

    在這里,我給每個視圖和控件都增加了一個 tag ,在拖拽的時候根據 tag 知道拖拽的是哪個控件和視圖,然后記錄位置,寫入 文件中,在 方法中讀取文件,根據記錄的位置布局,這樣,再次打開應用時,就會根據自己拖拽和組合的方式排列。

    c#web設計中視圖的布局表格_c#web設計中視圖的布局表格_access數據表視圖和設計視圖

    最后

    最后,有一個問題就是c#web設計中視圖的布局表格,相對布局會根據自己初始的位置有覆蓋層級的,先寫的在下面,后寫的控件在上面,拖拽的時候,怎么把下面的提到上面來呢?方法也很簡單c#web設計中視圖的布局表格,那就是:

    使用 child.() 方法

    () 方法就是干這個事的,會把操作的視圖,提到最上層來。

    最后的最后

    最后的最后,我就不貼具體的代碼和使用方式了,代碼和使用方法都在我的 上,地址如下:

    有興趣的同學可以去研究一下。

網站首頁   |    關于我們   |    公司新聞   |    產品方案   |    用戶案例   |    售后服務   |    合作伙伴   |    人才招聘   |   

友情鏈接: 餐飲加盟

地址:北京市海淀區    電話:010-     郵箱:@126.com

備案號:冀ICP備2024067069號-3 北京科技有限公司版權所有