UI组件:布局管理器

一、线性布局(LinearLayout)

  线性布局可以让布局中的组件一个接着一个的连在一起水平对齐(orientation="vertical")或者垂直对齐(orientation="horizontal"),写游戏界面时会限制动作,所以不推荐游戏界面中使用

  特点:线性布局不会主动换行,当几个组件水平分布,但是这一行放不下时,多余的不会显示

二、绝对布局(AbsoluteLayout)

 绝对布局没有布局控制,组件的大小和位置全部由开发人员用x,y坐标来一一定义,由于手机的的屏幕大小和分辨率都存在差别,所以用绝对布局写的程序在不同手机上的显示效果可能会有变动,不推荐使用该布局方式

三、相对布局(RelativeLayout)

 线性布局是组件与组件之间的关系,设定一个组件的位置,然后其他组件可以根据该上下左右的位置关系来进行放置

  特点:使用相对布局需要给每个组件都给定一个id,方便组件位置的布局

四、帧布局(FrameLayout)

  帧布局的作用是将组件一个个的叠加在一起,但是不能将位于下面的组件移到上面。帧布局顾名思义,给加入该布局的组件创建一片空白区域(称为一帧),每个组件占一帧,所以组件可以叠加在一起。如果给六个相同的组件,组件的面积大小逐渐减少,并且给每个组件一种背景颜色,让每个组件的背景颜色一直变化,就可以产生霓虹灯效果

五、网格布局 (GridLayout) 

  网格布局格式设置整体布局的行数(rowCount)和列数(columnCount),效果就像棋盘一样,加入其中的控件每个控件占一个格子,当然,网格布局可以设置一个控件同时横跨几列(layout_columnSpan)也可以同时横跨几行(layout_rowSpan)。也可以指定控件位于第几行(layout_row)第几列(layout_column),精准的确定位置

六、表格布局(TableLayout)

  表格布局继承线性布局,本质是和线性布局差不多的,不需要明确多少行和多少列,直接在表格布局里添加一个TableRow就是一个行或者列。在线性布局中添加一个表格布局的作用和往线性布局中镶嵌一个线性布局的作用是相同的。此外表格布局还有两个xml属性是线性布局没有的,shrinkColumns设置组件允许收缩和StrechColumns设置组件允许拉伸。

时间: 2024-10-20 22:09:01

UI组件:布局管理器的相关文章

安卓开发:UI组件-布局管理器和文本显示

接下来的随笔,记录了在学习b站up主:天哥在奔跑,录制的教学视频的同时,进行一个app开发. up主:天哥在奔跑 视频地址:https://www.bilibili.com/video/av38409964?from=search&seid=1641333322970886700 开发app:师傅网 2.1布局管理器 每个界面上元素有很多,各元素相互之间的摆放位置与元素关系,就由布局管理器完成.常用的两种布局为线性布局(LinearLayout)和相对布局(RelativeLayout). 2.

UI复习-布局管理器FrameLayout(霓虹灯)

1>帧概念,在该布局内的组件,类似window编程的card层叠在一起 package com.brady.est; import java.util.Timer; import java.util.TimerTask; import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.support.v7.app.ActionBarActivity; import and

UI复习-布局管理器GridLayout(计算器界面)

1>GridLayout,4.0版本以上新增的网格布局,以下版本需要引用支撑包 package com.brady.est; import android.annotation.SuppressLint; import android.os.Bundle; import android.support.v7.app.ActionBarActivity; import android.view.Gravity; import android.view.Menu; import android.vi

2.2UI组件(一)布局管理器

所有的布局管理器都是ViewGroup的子类. 2.2.1线性布局LinearLayout android:orientation:可以控制竖排显示(vertical)或者横排显示(horizontal) LInearLayout不会自动换行,一旦屏幕排满之后后面的控件将看不到 基本上很多布局管理器都提供了相应的LayoutParams内部类,该内部类用于控制他们的子元素使他们都具有android:layout_gravity属性,概述性设置子元素在父容器 中的对齐方式 例子 1 <?xml v

java常用组件以及布局管理器

Swing组件按功能来分,可以分为如下几类: ?  顶层容器:JFrame.JApplet.JDialog和JWindow ?  中间容器:JPanel.JScrollPane.JSplitPane.JToolBar ?  特殊容器:在用户界面上有特殊作用的中间容器,如:JInternalFrame.JRootPane.JLayeredPane和JDestopPane ?  基本组件:JButton.JComboBox.JList.JMenu.JSlider ?  不可编辑信息的显示组件:向用户

【Java Swing探索之路系列】之三:Java Swing布局管理器组件

作者:郭嘉 邮箱:[email protected] 博客:http://blog.csdn.net/allenwells github:https://github.com/AllenWell 一 BorderLayout BorderLayout是一种简单的布局策略,可以将其看作一个组件.它把容器分为东.南.西.北.中5个区域,每个组件将占据某个区域.而 这5个区域分别被命名为NORTH, WEST, EAST, CENTER, SOUTH,它们都被定义为静态 常量.静态常量可以直接引用,如

Java布局管理器组件

Java布局管理器组件 所谓布局管理器,就是为容器内的组件提供若干布局策略,每个容器都拥有某种默认布局管理器,用于负责其内部组件的排列.目前开发中,常用的布局管理器有BorderLayout.FlowLayout.GridLayout.GridBagLayout.CardLayout.BoxLayout.SpringLayout.GroupLayout等: 布局管理器种类 BorderLayout FlowLayout GridLayout GridBagLayout CardLayout Bo

【java】浅析java组件中的布局管理器

这篇博文笔者介绍一下java组件中,常用的布局管理器.java组件中的布局方式有好几十种,所有的这些布局管理器都实现了java.awt.LayoutManager接口.接下来笔者介绍一下常用的5种布局管理器,FlowLayout.BorderLayout.GridLayout.GridBagLayout.CardLayout.BoxLayout.如果不希望使用布局管理器,可以调用组件的 setLayout(null); ,但是不建议设置layout为null,因为这样就失去了跨平台特性,和jav

布局管理器

线性布局 线性布局由LinearLayout类来代表.可以控制组件横向排列和纵向排列. 注:android:gravity属性中的多个属性值之间用竖线隔开,但竖线前后千万不能出现空格. 表格布局 表格布局由TableLayout所代表,表格布局采用行.列的形式来管理UI组件,TableLayout并不需要明确地声明包含多少行.多少列,而是通过添加TableRow.其他组件来控制表格的行数和列数. 每次向TableLayout中添加一个TableRow,该TableRow就是一个表格行,Table

Android第二节(view简介以及Android布局管理器),维维复习

布局管理器是指定View之间的排列方式的.view就是UI控件,下节课我会整理到,这里我们先讲布局,大布局在我看来就相当于一个房间,让view显示,就是说物品在房间的摆放规则. 一.View的简介 View ,一般都有TextView,EditText,Button,RadioButton,CheckBox,ImageView,ImageButton. ViewGroup,一般有LinearLayout,RelativeLayout,FrameLayout,Spinner,ListView,Gr