您好,登錄后才能下訂單哦!
從本篇博客開始我們開始介紹如何使用ConstraintLayout。
既然ConstraintLayout叫約束布局,首先我們先介紹什么叫約束(Constraints):
一個約束表示View之間的"布局約束"關系,以及約束的位置,類似RelativeLayout的"相對"概念。
在工程中我們新建一個布局activity_main.xml,整個界面如下:
這是一個編輯器整體的界面,下面我們來介紹一些常用的功能:
左下角有視圖切換的選項,通過這個選項我們可以切換設計/(代碼)文本視圖,傳統在開發的過程中可能覺得設計視圖并不常用,但是在使用ConstraintLayout時它確實很強大,反而可能很少用代碼視圖了。
這里我們可以看到左上角的按鈕,這個是用來切換設計界面和藍圖界面的,通常我們需要兩個界面都展示,這樣我們可以更加清晰地看到各個View的約束。
這個功能我們可以切換橫豎屏等UI的模式,這個功能也可以使我們方便的進行各種UI模式的適配。
在這里我們可以預覽當前布局在不同的分辨率下的效果,這個功能在適配的時候非常方便,這里提一下下面的Custom選項,這個功能允許我們將當前布局拖拽成任意的大小:
這個功能允許編輯器自動進行約束,當我們拖拽一個空間到視圖中后,編輯器會自動為我們創建一個約束,可能很多時候我們并不需要自動約束,我們可以點擊把它關閉。
這個按鈕類似PS的魔棒,它的功能是進行約束的推斷,如圖我拖拽了兩個按鈕到布局中,一開始并沒有任何約束,當我點擊了這個按鈕后,自動為我生成了如圖的約束。
我們切換到代碼視圖:
此時我們發現界面的哪些約束在代碼中也僅僅增加了幾行代碼,用來表示當前的約束,仔細觀察后我們發現其實都是toStartOf,toEndOf,toTopOf...,這些都是指定的當前View與其它View(或Parent)之間的關系,對比一下RelativeLayout,我們很容易就能明白。
如果當前沒有任何約束的時候,我們觀察代碼:
注意這些tools:xxx,只是表示View在編輯器的絕對位置,是用來我們設計(拖拽)時使用的。如果不添加約束,運行后只是顯示在屏幕的左上角,重疊在一起。
本文我們主要講解了ConstraintLayout編輯器常用功能的使用。這些功能靈活且方便地幫助我們布局頁面。下一篇:Android開發 - 使用ConstraintLayout(四)創建基本約束我們將介紹使用基本的約束。
本文地址,如有更多疑問,請參考我的其它Android相關博客:我的博客地址
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。