日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

Android开发的六种常用布局

發布時間:2023/12/13 综合教程 27 生活家
生活随笔 收集整理的這篇文章主要介紹了 Android开发的六种常用布局 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本人是Android小白,剛剛學習Android開發,通過觀看教學視屏和書籍學習,總結下Android開發的小知識,大神勿噴!

第一種:LinearLayout:線性布局

     線性布局是按照處置或者水平進行排布的,默認是水平

  屬性:orientation:用來指定當前的線性布局的排布方向。

     wrap_content:包裹內容

     match_parent:匹配父類

     margin:外邊距

     padding:內邊距

     gravity:便是控件的內部內容針對控件本身的對其方式

     layout_gravity:表示該控件自身在父類布局中的對齊方式

  注:如果線性布局排布方式為水平,那么layout_gravity在水平的方向上就不起作用,只能在垂直的方向上起作用

     layout_weight:表示權重的概念,即該百分比的形式進行對齊方式

      如果控件劃分的區域為wrap_content,那么權重值越大,所占比例就會越大

      如果控件劃分的區域為match_parent,那么權重值越大,所占比例就會越小

思考:在一個頁面中,有一個權重的控件和一個無權重的控件,系統會先給誰分配空間尼?

  答:系統肯定先給無權重的控件分配空間,才會得到需要百分比的空間大來進行百分比的劃分。

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 3     xmlns:tools="http://schemas.android.com/tools"
 4     android:layout_width="match_parent"
 5     android:layout_height="match_parent" 
 6     android:orientation="vertical"
 7     >
 8 
 9     <Button
10         android:layout_width="match_parent"
11         android:layout_height="wrap_content"
12         android:paddingTop="20dp"
13         android:paddingBottom="20dp"
14         android:layout_marginTop="20dp"
15         android:layout_marginBottom="20dp"
16         android:text="Button1"/>
17 
18     <Button
19         android:layout_width="wrap_content"
20         android:layout_height="wrap_content"
21         android:paddingTop="20dp"
22         android:paddingBottom="20dp"
23         android:paddingLeft="30dp"
24         android:paddingRight="30dp"
25         android:layout_gravity="center"
26         android:text="Button2"/>
27     
28 </LinearLayout>

第二種:RelativeLayout:絕對布局

按照空間之間的相對位置進行排布,存在一個參照物的概念。

  屬性:centerInparent:位于父類的中部

     alignParentRight:對齊父類的右方

     alignParentLeft:對齊父類的左方

     toRightOf:在某個控件的右方

     toLeftOf:在某個控件的左方

     alignBotton:底部對齊

     alignTop:頂部對齊

     alignRight:右對齊

     alignLeft:左對齊

     alignBaseLine:基準線對齊

  注:針對相對布局而言,一般都不會過多的給定很多相關聯的屬性,否則耦合性就大大的增加

第三種:TableLayout:表格布局------>繼承LinearLayout

  屬性:stretchColumns:拉伸某一列,讓布局顯得不緊湊

     shrinkColunms:回縮某一列,讓整體的內容都得以呈現

     collapseColumns:隱藏某一列

     TableLayout屬于行和列的形式的管理控件,每行為一個TableRow對象

     TableLayout不會生成邊框

  注:TableRow的寬和高可以不指定,系統會自動給定對應的寬和高

第四種:FrameLayout:幀布局

幀布局中的每一個組件都代表一個畫面,用該布局可以實現動畫效果

1.默認按照左上角(0,0)開始排布

2.在幀布局中定義的控件每一個都是以畫面的形式進行呈現

3.最開始定義的控件出現在最下方那個,最后定義的控件出現在最上面。

  注:幀布局可以使用在手機聯系人的導航顯示字母的呈現

    幀布局使用在幀動畫

第五種:AbsolutiveLayout:絕對布局

又叫坐標布局,可以直接指定子元素的絕對位置

特點:這種布局簡單直接,直觀性強

使用中一般通過Layout_x和Layout_y來指定對應的控件存放的位置

缺點:不利于屏幕的適配

第六種:GridLayout:網格布局

Android4.0以上的版本出現,可以實現合并行合并列的效果

  屬性:layout_columnSpan:擴展列的數目

     layout_rowSpan:擴展行的數目

     layout_gravity:填充方式(fill)

     columnCount:存在多少列

     RowCount:存在多少行

注:GridLayout和TableLayout有什么不同?

  TableLayout定義TableTRow來呈現內容,GridLayout中可以定義控件來直接使用  

  表格布局中只能 合并列不能合并行,但是在網格布局中既能合并列也能合并行

總結

以上是生活随笔為你收集整理的Android开发的六种常用布局的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。