首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Android之布局详解

指定布局与子布局的间距 android:paddingLeft 指定布局左边与子布局的间距 android:paddingTop 指定布局上边与子布局的间距 android:paddingRight...我们还可以通过指定部分控件的layout_weight值来实现更好的效果。 相对布局 RalativeLayout又称作相对布局,也是一种非常常用的布局。...注意:当一个控件去引用另一个控件的id时,该控件一定要定义在引用控件的后面,不然会出现找不到id的情况。...:orientation GridLayout中子元素的布局方向 android:alignmentMode alignBounds:对齐子视图边界 alignMargins :对齐子视距内容,默认值...默认是true android:useDefaultMargins 没有指定视图的布局参数时使用默认的边距,默认值是false item属性 属性 作用 android:layout_column 指定该单元格在第几列显示

2K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Android开发笔记(六十七)嵌入页面的碎片

    设计Fragment的目的是让页面布局更加灵活,不但可以随意组装和拼接各个片段,还可以只更新某个片段实现页面局部更新的功能(这个类似网页的ajax技术)。...Fragment可以协助我们完成如下任务: 1、在一个页面中嵌入多个连续可翻页的子视图,方面使用ViewPager统一管理; 2、开发一些通用的小部件,内部封装好代码逻辑,可直接嵌入到任意页面。...静态注册主要用于多个Activity共享一个子页面,比如说顶部广告、底部推广、嵌入地图等等,最常见的是百度地图SDK的运用,app要想在页面上展示百度地图,只需在布局中加上一个百度地图的fragment...下面是在布局文件中静态注册fragment的一个例子: <fragment android:id="@+id/fragment_test" android:layout_width...: 1、横屏的布局文件放在目录layout-land,竖屏的布局文件根节点采用FrameLayout,横屏的布局文件根节点采用LinearLayout(水平排列)。

    1.3K60

    【Android开发基础系列】Layout布局专题

    Android GUI程序的屏幕体系结构的组织遵循以下原则:一个屏幕可以包含一个视图,视图组本身也是一个视图,视图组可以包含若干个视图。         ...在 Android 中布局通常有以下几种不同的情况:         FrameLayout(框架布局):系统默认的在屏幕上就有空白区显示它;         LinearLayout(线性布局):让所有的子视图都成为单一的方向...,即垂直的或者水平的;         AbsoluteLayout(绝对布局):让子视图使用x/y坐标确定在屏幕上的位置;         RelativeLayout(相对布局):让子视图的位置和其他的视图相关...;         TableLayout(表单布局):位置是它的子视图的行或列。        ...://www.bubuko.com/infodetail-989657.html 1.2.7 FrameLayout         框架布局是最简单的布局形式。

    37920

    Android入门教程(三)-安卓UI文档教程

    对Android五大布局的描述,分别是 FrameLayout (框架布局),LinearLayout (线性布局),AbsoluteLayout (绝对布局),RelativeLayout (相对布局...FrameLayout 框架布局 FrameLayout 布局的使用效果,就是所有布局里的控件都会自动往左上角放置。所有的元素都会依次覆盖上一次的元素。...这就是gravity属性描述控件内部的文本格式。 其实还有很多不同的显示,你可以自己操作一遍试试。 LinearLayout线性布局 LinearLayout是很常用的布局,什么是线性布局?...贴紧父元素的上边缘android:layout_alignWithParentIfMissing 如果对应的兄弟元素找不到的话就以父元素做参照物第二类:属性值必须为id的引用名“@id/id-name...表格布局TableLayout 将子元素的位置分配到行或列中, 是一个以行、列显示视图View的视图组。

    61920

    Android入门教程 | Fragment 基础概念

    onCreateView() 系统会在片段首次绘制其界面时调用此方法。如要为片段绘制界面,从此方法中返回的 View 必须是片段布局的根视图。如果片段未提供界面,可以返回 null。...如要为片段提供布局,必须实现 onCreateView() 回调方法,Android 系统会在片段需要绘制其布局时调用该方法。此方法的实现所返回的 View 必须是片段布局的根视图。...container 参数是片段布局将插入到的父级 ViewGroup(来自 Activity 的布局)。...ID 所标识的布局容器中的任何片段(如有)。...Fragment 的容器一个 FrameLayout,add 的时候是把所有的 Fragment 一层一层的叠加到了FrameLayout 上了,而 replace 的话首先将该容器中的其他 Fragment

    3.5K40

    Android入门教程(三)

    对Android五大布局的描述,分别是 FrameLayout (框架布局),LinearLayout (线性布局),AbsoluteLayout (绝对布局),RelativeLayout (相对布局...FrameLayout 框架布局 FrameLayout 布局的使用效果,就是所有布局里的控件都会自动往左上角放置。所有的元素都会依次覆盖上一次的元素。...在布局文件中,我们可以看到android:gravity=”###”的描述情况,该控件是描述控件内部的文本格式。...LinearLayout线性布局 LinearLayout是很常用的布局,什么是线性布局,那就是垂直和水平两种布局来排列。.../huangguangda/RelativeLayout TableLayout表格布局 TableLayout 将子元素的位置分配到行或列中,是一个以行、列显示视图View的视图组。

    66320

    【Android 应用开发】Android - TabHost 选项卡功能用法详解

    根标签及id 设置Android自带id : XML布局文件中, 可以使用 标签设置, 其中的id 需要引用 android的自带id : android:id="@android:id...="@android:id/tabs" ; TabHost必备组件 : 该组件与FrameLayout组件是TabHost组件中必备的两个组件; 切换按钮下方显示 : 如果想要将按钮放到下面, 可以将该组件定义在下面...FrameLayout组件 组件作用 : 该组件中定义的子组件是TabHost中每个页面显示的选项卡, 可以将TabHost选项卡显示的视图定义在其中; 设置android自带id : 这个组件的id要设置成...获取TabHost 获取方法 : getHost(); 前提 : 调用getHost()方法获取TabHost组件的方法的前提是在布局文件中, 设置了android自带的id android:id="@...传入的参数是创建选项卡的TabSpec对象; 三 代码  XML布局文件 :  <?

    1.2K20

    Android精通:布局篇

    表格布局 GridLayout网格布局 TableLayout表格布局 TableLayout的介绍 TableLayout是将子类向分别排列成行和列的布局视图容器,TableLayout是由许多TableRow...对象组成的,表格布局以行列的形式管理子控件,每一个单元是一个TableRow或者View对象。...GridLayout网格布局 GridLayout网格布局是在Android 4.0以后引入的一种新的布局模式,和表格布局是有点类似的,但比表格布局的好,功能也是很强大的,它可以设置布局有多少行和有多少列...RelativeLayout相对布局 RelativeLayout是一个相对布局的视图组,用来显示相对位置的子视图类,在默认情况下,所有子视图对会分布在左上角。...绝对布局: 指子控件通过绝对定位x,y位置来决定其位置摆放。 表格布局: 指以行列的形式放置子控件,每一行是一个TableRow对象或者View对象。

    2.1K40

    Android精通:TableLayout布局,GridLayout网格布局,FrameLayout帧布局,AbsoluteLayout绝对布局,RelativeLayout相对布局

    表格布局 GridLayout网格布局 ---- TableLayout表格布局 TableLayout表格布局.png TableLayout的介绍 TableLayout是将子类向分别排列成行和列的布局视图容器...,TableLayout是由许多TableRow对象组成的,表格布局以行列的形式管理子控件,每一个单元是一个TableRow或者View对象。...GridLayout网格布局 GridLayout网格布局是在Android 4.0以后引入的一种新的布局模式,和表格布局是有点类似的,但比表格布局的好,功能也是很强大的,它可以设置布局有多少行和有多少列...RelativeLayout相对布局 RelativeLayout是一个相对布局的视图组,用来显示相对位置的子视图类,在默认情况下,所有子视图对会分布在左上角。...绝对布局: 指子控件通过绝对定位x,y位置来决定其位置摆放。 表格布局: 指以行列的形式放置子控件,每一行是一个TableRow对象或者View对象。

    4.1K20

    Android布局优化三剑客:include+merge+ViewStub

    还有一种情况,假如你的主布局是RelateLayout,这时为了设置相对位置,你也需要给它们设置不同的id。...1.3 控件ID相同时的处理 在1.1中我们知道了id属性可以重写include布局的根布局id,但对于根布局里面的布局和控件是无能为力的,如果这时一个布局在主布局中include了多次,那怎么区别里面的控件呢...我们先创建一个layout_include2.xml的布局,它的根布局是FrameLayout,里面有一个TextView,它的id是tv_same: FrameLayout> 在主布局中添加进去: 的布局放到一个子布局之后就必须加一个根布局,如果你的主布局的根布局和你需要include的根布局都是一样的(比如都是LinearLayout),那么就相当于在中间多加了一层多余的布局了。

    3.5K53

    再谈Fragment

    比如我们常见的布局,底部导航,然后每个模块对应不同的 Fragment。其实也是完全可以不使用 Fragment 的,一个页面中包含各个模块的布局,然后通过点击导航来决定隐藏哪些模块。...和 remove 不同的是,此时 Fragment的状态依然由 FragmentManager 维护 attach() 重建 view 视图,附加到UI上显示 .addToBackStack() 是将事务放入回退栈...布局上,是因为 FrameLayout 布局足够简单,可以减少不必要的布局加载。...Fragment 的布局只是附着在 FrameLayout 上,作为 FrameLayout 的 子 View ,并没有取代 FrameLayout FrameLayout android...通过上面 .add 的方式添加 Fragment 只是将 Fragment 添加到指定的布局中,之后再添加 Fragment 是互相不影响的,在布局上看 FrameLayout 有两个子View(FragmentOne

    1K20

    手把手教你读懂源码,View的绘制流程详细剖析

    FrameLayout的onMeasure方法 首先是调用measureChildWithMargins方法来测量每一个子视图的宽度和高度,并且找到这些子视图的最大宽度和高度值,保存在变量maxWidth...performLayout方法 调用了根视图的layout()方法,从传递的4个参数知道DecorView布局的位置是从屏幕最左最顶端开始布局,到屏幕最低最右结束。...继续回到layout()方法,后面调用了onLayout()方法,实际上是给自己的子控件布局。...需要注意的是FrameLayout布局其实在View类中的layout方法中已经实现,布局的逻辑实现是在父视图中实现的,不像View视图的measure测量,通过子类实现onMeasure方法来实现测量逻辑...,接着子元素会重复父容器的measure的测量过程,如此反复的完成整个View树的过程。

    1.3K100

    技术分享 | 想做App测试就一定要了解的App结构

    如果是两种架构都支持的话,那么就是真机和模拟器都可以安装了。 res/ 目录 res 目录是工程资源目录,存放的是各种资源文件,包括界面布局,图片,字符串等。...Activity 是存放 View 对象的容器,也是界面的载体,可以用来展示一个界面。 WINDOW Window 是 Android 中的窗口,表示顶级窗口,也就是主窗口。...界面上的布局方式都有以下这些方式: 线性布局(LinearLayout):所有子视图在单个方向(垂直或水平)保持对齐 相对布局(RelativeLayout):每个视图的位置可以指定为相对于同级元素的位置...例如在另一个视图的左侧或下方,或相对于父级区域的位置,例如在底部、左侧或中心对齐 帧布局(FrameLayout):坐标原点是屏幕的左上角,位置固定,只需为控件指定大小即可,用来显示一个单一的视图 绝对布局...(AbsoluteLayout):能够指定其子视图的确切位置 表格布局(TableLayout):通过画表表格的方式来实现布局,整个页面就相当于一张大的表格,控件就放在每个 Cell 中 常见属性 index

    35930

    Android Hierarchy Viewer

    TextView文本框,里面的文字是“Safe”,第2行是一个FrameLayout帧布局,分别包含了一条鱼和一个鱼缸子。...3)最右边的图中,使用了一个垂直布局的LinearLayout,并且划分为两行,第一行是写有“Yum” 文本的文本框,第2行是一个FrameLayout帧布局,分别包含了一条小猫和一条鱼。...再往左看,会看到这两个控件实际上是被包裹在FrameLayout布局中,这里可以清楚看到指出了这个布局的id为@id/frameLayoutFishbowl。...再往左边看,可以看到再上一层的控件:LinearLayout布局控件以及它包含的一个TextView控件(显示“Safe”字样)以及@id/frameLayoutFishbowl的frameLayout...,该控件的该节点的测量(measure)、布局(layout)以及画视图(draw)的时间,如下图:   如上图,这里1 view表明这个文本控件没再包含其他子控件了,只有1个就是它本身。

    1.3K20

    Android组件View绘制流程原理分析

    的一个具体的类,该类内部包含了一个DecorView对象,该DectorView对象是所有应用窗口(Activity界面)的根View DecorView继承FrameLayout,里面id=content...依据Feature等style theme创建不同的窗口修饰布局文件,并且通过findViewById获取Activity布局文件该存放的地方(窗口修饰布局文件中id为content的FrameLayout...将Activity的布局文件添加至id为content的FrameLayout内。 当setContentView设置显示OK以后会回调Activity的onContentChanged方法。...,而这个尺寸是需要父视图和子视图共同决定的 measure流程从根视图measure遍历整个view树结构,如下: ?...区分View动画和ViewGroup布局动画,前者指的是View自身的动画,可以通过setAnimation添加,后者是专门针对ViewGroup显示内部子视图时设置的动画,可以在xml布局文件中对ViewGroup

    1.2K40
    领券