導航:首頁 > 操作系統 > 安卓開發幀布局如何調整位置

安卓開發幀布局如何調整位置

發布時間:2023-04-06 09:41:20

android的界面布局方式有哪些

一、界面布局之線性布局(LinearLayout)

這種布局比較常用,也比較簡單,就是每個元素佔一行,把它按照橫向排放,也就是每個元素佔一列。在布局中都按照垂直或者水平的順序依次排列子元素,每一個子元素都位於前一個元素之後。

二、界面布局之相對布局(RelativeLayout)

相對布局是android界面設計中比較常用和好用的一個布局方式。

三、界面布局之表格布局(TableLayout)

表格布局採用行、列的形式來管理元素組件。TableLayout的行和列不需要聲明,而是採用添加方法控制。

每次在TableLayout中添加一個TableRow,一個TableRow就代表表格中的一行,也同樣是容器,往裡面添加一個子組件就代表增加一列。在表格布局中,列的寬度由最寬的那個單元格決定,整個表格布局寬度取決於父容器的寬度

四、界面布局之絕對布局(AbsoluteLayout)

特點:以坐標的方式來定位在屏幕上的位置,引起缺乏靈活性,在沒有絕對定位的情況下相比其他類型的布局更難維護

五、界面布局之幀布局(FrameLayout)

FrameLayout是五大布局中最簡單的一個布局。在幀布局中,整個界面被當成一塊空白備用區域,所有的子元素都不能被指定放置的位置,它們統統放於這塊區域的左上角,並且後面的子元素直接覆蓋在前面的子元素之上,將前面的子元素部分和全部遮擋。

轉自長沙軟體公司---小房子

⑵ 什麼是幀布局

FrameLayout(幀布局)
前言
作為android六大布局中最為簡單的布局之一,該布局直接在屏晌消幕上開辟出了一塊空白區域,
當宴伍知我們往裡面添加組件的時候,所有的組件都會放置於這塊區域的左上角;
幀布局的大小由子控制項中最大的子控制項決定,
如果都組件都一樣大的話,同一時刻就只能能看到最上面的那個組件了!
當然我們也可以為組件添加layout_gravity屬性,從而制定組件的對其方式
幀布局在游戲開發方面用的比較多,等下後面會給大家演示一下比較有意思的兩個實例
前景圖像:
永遠處於幀布局最頂的,直接面對用戶的圖像,,就是不會被覆蓋的橘激圖片
常用屬性:
android:foreground:設置該幀布局容器的前景圖像
android:foregroundGravity:設置前景圖像顯示的位置

⑶ android絕對布局怎麼設置組件間的距離

在絕對布局AbsoluteLayout中:
子控制項的則州位置可以通過android:layout_x="**px"android:layout_y="**px"消團進行絕對控制。這里的px表示絕對的像素,所以至於組件之間的距離可以進行非常精確的控制。也可以使用dip做單位,這個單位是按照屏幕密度進行計算的。
在相對布局RelativeLayout中:

layout_marginBottom是指控制項作為子控制項和其他控制項或者父控制項邊界的距離。其中的Bottom可以換成Right,Left等方向。
綜上,如果想用絕對布局實現組件距離,使用具體位置控制,但很多時候不見得能達到理想的效果,使用dip對不同設備顯示效果不一樣。這個時候建議使用相對布局,能很方便的對位置進行控制。如果一定要使用絕對布局,請使用布局嵌套,即一個布局包含多個布局的方式,或者使用幀布局進行布局覆蓋顯示,比如在一個幀布局中定義一個絕對布局和相對布局,後者覆蓋前孫橋蔽者。

⑷ FrameLayout 內的控制項如何設置位置

所有的子元素將會固定在屏幕的左上角;不能為FrameLayout中的一個子元素指定一個位置。後一個子元素將會直接在前一個子元素之上進行覆蓋填充,把它們部份或全部擋住(除非後一個子元素是透明的)。
簡單來說:FrameLayout中的子元素總是以屏幕的左上角層疊在一起。在FrameLayout布局裡面android:layout_margin的各種屬性必須依賴於團和android:layout_gravity,也就是說,要想margin生效,必須設定view的辯肆layout_gravity屬性。
下面的配置將2個控制項顯示在屏幕的中間:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" 寬
android:layout_height="fill_parent" 高
>
<LinearLayout
android:layout_width="200dip" 寬
android:layout_height="wrap_content" 高
android:orientation="vertical" 垂直
android:gravity="center" 居中
android:layout_gravity="center" 居中
>
<ImageView
android:layout_width="wrap_content"
android:layout_height="塌灶盯wrap_content"
android:src="@drawable/empty3"
/>
<TextView
android:layout_width="fill_parent" 寬
android:layout_height="wrap_content" 高
android:layout_marginTop="10dp"
android:text="暫無記錄"
android:textColor="@color/gray_dark"
android:textSize="@dimen/font_middle"
android:gravity="center"
/>
</LinearLayout>
</FrameLayout>

⑸ 11 幀布局——FrameLayout

FrameLayout 應該說是 Android 常用UI布局裡面最簡單的一種,顧名思義,它的布局方式就是將 View 一幀一幀的疊加到一起,有點類似 Photoshop 裡面的圖層的概念。在學習 FrameLayout 的過程中,你會發現基於它可以設計出很多有意思的 Android UI。那麼接下來,我們來一起一探究竟。

FrameLayout 是 最簡單且最高效 的布局形式,不過 FrameLayout 的使用頻率相比其他的 Layout 來講要更少很多,主要是因為很多時候它只是作為一個容器來顯示單個 View 或者多個 View 重疊的場景。
用過 Photoshop 的朋友對「圖層」的概念應該比較熟悉,我們可以插入很多個圖層,後添加的圖層會擋住先添加的圖層,然後針對每個圖層我們可以任意的設置它在整個圖片中的位置。同樣的,我們可以設置 FrameLayout 內部 View 所處的位置,與 RelativeLayout 相似,可以設置放置在上下左右,同樣也可以設置邊距。辯滲如果放置了多個 View,那麼他們會按照放置的順序依次疊加扮族,後加入 View 的會擋住前面加入的 View。

在第 1 小節我們提到過,FrameLayout 可以設置內部 View 所在的位置,那麼這幾個屬性和 RelativeLayout 一樣,這里不再重復,主要介紹一下 FrameLayout 特有又常用的兩個屬性: android:foreground 和 android:foregroundGravity 。

android:foreground: 設置 FrameLayout 的前景圖像
前景圖像會置於 FrameLayout 內部所有 View 的層級之上,直接設置圖片的資源 id 即可,如下:

android:foregroundGravity: 設置 FrameLayout 前景圖片的擺放位置,設置方式與 RelativeLayout 中的 View 一樣,如:

我們的 FrameLayout 需要滿足以下要求:

效果如下:

這就是 FrameLayout 的基本用法。

到這里,基本上你已經掌握了 FrameLayout 的用法,可能你會有所疑惑,看起來 FrameLayout 也沒有什麼特別好的地方,似乎完全可以被 RelativeLayout 替代,所以很多人在開發過程中,往往會忘記還有這么個 Layout。其實越是往後學你越會發現,FrameLayout 的簡單不僅僅體現在使用上,更大的優勢是在於其性能。當你的屏幕上控制項不太多時,比如 Android 的桌面 Widget,或者 Home 應用,大多都是直接採用 FrameLayout 完成的布局。
事實上,還有一處是 FrameLayout 用攜缺脊的最多的地方,也是一個非常隱蔽的地方。如果我們打開 Hierarchy Viewer 或者類似的 View 分析工具,我們可以看到Android的每一個頁面都是在一個 FrameLayout 中完成的布局,也就是無論你定義的布局有多復雜,最終都會被放到一個 FrameLayout 當中顯示,這也體現了 FrameLayout 的強大,在今後的學習工作中,希望大家一定不要忽視了 FrameLayout,在此為大家埋下一個伏筆。

這里需要再次強調:FrameLayout 是 最簡單,最高效 的布局方式。它的布局方式很容易理解,我們通過它可以將內部的 View 防止到任意的方位,如果內部有多個 View,那麼按照防止順序,後加入的View會擋住前面加入的 View。

⑹ 安卓開發中framelayout怎麼實現頁面切換

1,後台代碼setContentView設置,這種方式控制的不好會很折騰人。
2,在第四個XML種將前三個<include/>進去,並設置visibility屬性為gone,然後後台處理事件中設置setVisible控制顯示哪個,這種方式因所有布局文件同時繪制,故內存佔用會相對大那麼一丁點。
3,就你描述的要求,好像沒其他方法了,也很有可能是我不知道。

⑺ 安卓幀布局疊放次序屬性

屬性如下:
1、android:foreground:該屬性用於指定一個前景層,在所有子視圖的上方進行繪制。可以設置一個顏色或者Drawable對象作為前景層。
2、android:layout_gravity:該屬性用於纖明段指定子視圖相對槐余於父容器的位置和對齊方式,從而影響其在布局中的疊放次序。默認情況下,子視圖的左上角位於父容器的左上角,如果設置為「center」、「right」、「bottom」等值,則會偏移位置。如果想要調整疊放順序,則可以通過調整子視毀譽圖的位置和對齊方式來實現。

⑻ android 怎麼設置線性布局 幀布局 全透明

Android設置線性布局 幀布局 全透明如下

1、LinearLayout(線性布局)
[html] view plainprint?
<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:orientation="vertical" >

<TextView

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="@string/mobile" />

<EditText

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:id="絕汪@+id/mobile" />

<Button

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="@string/button"

android:id="@+id/button"/>

<CheckBox

android:layout_width="wrap_content"

android:layout_height="wrap_content"/>

</LinearLayout>

2、RelativeLayout(相對布局)

[html] view plainprint?
<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:orientation="vertical" >

<余喊RelativeLayout

android:layout_width="fill_parent"

android:layout_height="wrap_content">

<TextView

android:layout_width="100dp"

android:layout_height="wrap_content"

android:text="@string/number"

android:id="@+id/numberlabel" />

<EditText

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:id="並毀仔@+id/number"

android:layout_toRightOf="@id/numberlabel"

android:layout_alignTop="@id/numberlabel"

android:layout_marginLeft="5dp"/>

</RelativeLayout>

<TextView

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="@string/content" />

<EditText

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:minLines="3"

android:maxLines="3"

android:id="@+id/content"/>

<Button

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="@string/button"

android:id="@+id/button"/>

</LinearLayout>

3、TableLayout(表格布局 兩行兩列)
[html] view plainprint?
<?xml version="1.0" encoding="utf-8"?>

<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

Android:stretchColumns="1">

<TableRow>

<TextView

android:text="@string/table_lable1"
android:padding="3dip"/>

<TextView

android:text="@string/table_lable2"

android:gravity="right"

android:padding="3dip"/>

</TableRow>

<TableRow>

<TextView

android:text="@string/table_lable1"
android:padding="3dip"/>

<TextView

android:text="@string/table_lable2"

android:gravity="right"

android:padding="3dip"/>

</TableRow>

</TableLayout >

4、FrameLayout(幀布局)顯示控制項會進行疊加,後者會疊加在前者之上

[html] view plainprint?
<?xml version="1.0" encoding="utf-8"?>

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"

android:layout_width="fill_parent"

android:layout_height="fill_parent" >

<ImageView

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:src="@drawable/movie" />

<ImageView

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:src="@drawable/play"

android:layout_gravity="center"/>

</FrameLayout>

閱讀全文

與安卓開發幀布局如何調整位置相關的資料

熱點內容
pr怎麼壓縮文件大小 瀏覽:859
查看oracle字元集命令 瀏覽:175
鋰電池增加密度 瀏覽:657
linux用戶密碼忘記 瀏覽:240
gb壓縮天然氣 瀏覽:633
圖片拼接不壓縮app 瀏覽:668
我的世界如何編程 瀏覽:84
vue反編譯代碼有問題 瀏覽:948
linuxshell字元串連接字元串 瀏覽:51
androidviewpager刷新 瀏覽:438
python編程計算平均分 瀏覽:678
加密數字貨幣市值查詢 瀏覽:692
時尚商圈app怎麼樣 瀏覽:584
stacklesspython教程 瀏覽:138
用命令行禁用135埠 瀏覽:212
linux防火牆編程 瀏覽:627
pdf閱讀器刪除 瀏覽:979
考研人如何緩解壓力 瀏覽:822
買電暖壺哪個app便宜 瀏覽:505
洛克王國忘記伺服器了怎麼辦 瀏覽:782