2、线性布局(LinearLayout ) (1)当我们采用垂直排列( android:orientation=“vertical” )时, LinearLayout xmlns:android=".../> LinearLayout> 效果图如下: 符合我们预期的效果,当我们将 android:layout_gravity=“center_horizontal” 改为 android:gravity.../> LinearLayout> 效果图如下: 符合我们预期的效果,当我们将 android:layout_gravity=“center_vertical” 改为 android:gravity...android:orientation=“vertical” 时, android:layout_gravity只有水平方向的设置才起作用, 垂直方向的设置不起作用。...只有垂直方向的设置才起作用, 水平方向的设置不起作用。
> 在上述代码中,我们将TextView和Button的高度都设置为0dp,并使用android:layout_weight属性将剩余的空间按比例分配给它们。...其中,方法可以通过编程方式进行设置,而属性可以在XML布局文件中进行设置。...android:layout_gravity="center_horizontal"/> LinearLayout> 上述代码创建了一个垂直方向的LinearLayout,其中包含两个子视图:一个...android:orientation属性设置为vertical,表示子视图按垂直方向排列。...这个简单的LinearLayout案例展示了如何在垂直方向上排列文本和按钮,并通过android:layout_gravity属性实现水平居中对齐。
同样,当我们在Button按钮控件中设置android:layout_gravity=”left”属性时,表示该Button按钮将位于界面的左部。...只有水平方向的设置才起作用,垂直方向的设置不起作用。...(2)当 android:orientation=”horizontal” 时, android:layout_gravity只有垂直方向的设置才起作用,水平方向的设置不起作用。...> 其效果如图: 在TextView中,我们设置了android:layout_gravity=“bottom|center_horizontal” ,但该TextView并没有显示在屏幕的下方正中央...,表明只有center_horizontal属性起了作用,这正是因为我们使用了LinearLayout布局,并且其android:orientation=”vertical”,只有水平方向的设置才会起作用
一、LinearLayout对齐 gravity控制组件的重心,也叫对齐方式,表示view横向和纵向的停靠位置。主要通过以下两个属性来控制。...android:layout_gravity:是相对于包含该元素的父元素来说的,设置该元素在父元素的什么位置。 其属性值主要有以下几种: top:将对象放在其容器的顶部,不改变其大小。...垂直对齐方式:垂直方向上居中对齐。 fill_vertical:必要的时候增加对象的纵向大小,以完全充满其容器。垂直方向填充。 center_horizontal:将对象横向居中,不改变其大小。...剪切基于其纵向对齐设置:顶部对齐时剪切底部;底部对齐时剪切顶部;除此之外剪切顶部和底部。垂直方向裁剪。 clip_horizontal:附加选项,用于按照容器的边来剪切对象的左侧和/或右侧的内容。...三、android:layout_gravity 接下来通过一个简单的示例程序来学习android:layout_gravity的使用用法。
> 1.整体用LinearLayout 布局, 宽高均为包裹父窗体 北京图片设置为:android:background="@drawable/home_page" 布局垂直方式 重心是居中...当 android:orientation="vertical" 时, 只有水平方向的设置才起作用,垂直方向的设置不起作用。...此时第一个控件的宽度若设置成“fill_parent”,后面添加的组件将都无法看到。因此使用该布局的时候要注意设置android:orientation="vertical"。...垂直方向填充 center_horizontal Place object in the horizontal center of its container, not changing its size...因此垂直方式排列时,每一行只会有一个 widget或者是container,而不管他们有多宽, 而水平方式排列是将会只有一个行高(高度为最高子控件的高度加上边框高度)。
” 时, android:layout_gravity只有水平方向的设置才起作用,垂直方向的设置不起作用。...即:left,right,center_horizontal 是生效的。...(2)当 android:orientation=”horizontal” 时, android:layout_gravity只有垂直方向的设置才起作用,水平方向的设置不起作用。...=”center_vertical”是无效的,下面我改成android:layout_gravity=”center_horizontal”** center_horizontal" /> LinearLayout> 当这样使用就是可以的了,要注意这个特殊情况
那么话说回来,这种效果到底是如何的呢?熟悉Android的朋友一定都会知道,很简单嘛,使用TabHost就OK了!...="center_horizontal" android:text="设置" android:textColor="#82858b" /> LinearLayout> 将这个LinearLayout又等分成了四份,每一份中都会显示一个ImageView和一个TextView。...那么setTabSelection()方法中又是如何处理的呢?...设置完默认选中项后,我们当然还可以通过点击Tab项来自由地切换界面,这就会进入到onClick()方法中。
那么话说回来,这种效果到底是如何的呢?熟悉Android的朋友一定都会知道,很简单嘛,使用TabHost就OK了!...那么剩下的问题就是如何借助Fragment来完成类似于TabHost一般的效果了,因此我们自然要动起手来了。...可以看到,我们将这个LinearLayout又等分成了四份,每一份中都会显示一个ImageView和一个TextView。...那么setTabSelection()方法中又是如何处理的呢?...设置完默认选中项后,我们当然还可以通过点击Tab项来自由地切换界面,这就会进入到onClick()方法中。
android:layout_gravity:是相对于包含改元素的父元素来说的,设置该元素在父元素的什么位置 比如TextView: android:layout_gravity表示TextView在界面上的位置...垂直方向填充 center_horizontal Place object in the horizontal center of its container, not changing its size...这是因为我们设置了 LinearLayout的android:orientation属性为”vertical”。...对于LinearLayout如果设置 android:orientation=”vertical”,那么android:layout_gravity的设置只在水平方向生效,如上图 TextView显示在屏幕的水平正中央...,而Button显示在水平方向的最左边;如果设置 android:orientation=”horizontal”,那么android:layout_gravity属性只在垂直方向生效 发布者:全栈程序员栈长
LinearLayout 线性布局 线性布局是按照水平或垂直的顺序将子元素(可以是控件或布局)依次按照顺序排列,每一个元素都位于前面一个元素之后。 线性布局分为两种:水平方向和垂直方向的布局。...center:居中显示,这里并不是表示显示在LinearLayout的中心,当LinearLayout线性方向为垂直方向时,center表示水平居中,但是并不能垂直居中,此时等同于 center_horizontal...的作用;同样当线性方向为水平方向时,center表示垂直居中,等同于center_vertical。...这里要与android:layout_gravity区分开,layout_gravity是用来设置自身相对于父元素的布局。...TableLayout 表格布局继承自LinearLayout,通过TableRow设置行,列数由TableRow中的子控件决定,直接在TableLayout中添加子控件会占据整个一行。
: 设置布局管理器内组件(子元素)的对齐方式, 支持的属性 : top, bottom, left, right, center_vertical(垂直方向居中), center_horizontal...实际案例 (1) 按钮排列 要点 : 底部 + 水平居中 对齐属性 : 左边的LinearLayout的android:gravity 属性为bottom|center_horizontal; ...右部 + 垂直居中 对齐属性 : 右边的LinearLayout的android:gravity 属性为right|center_vertical; 代码 : 子元素对齐 : 通过修改 android:gravity 属性来控制LinearLayout中子元素的排列情况; 左边的图的属性为 bottom|center_horizontal , 右边的...-- LinearLayout默认是水平的, 这里设置其方向为垂直 --> <!
线性布局 线性布局使用LinearLayout>标签进行配置,对应代码中的类是android.widget.LinearLayout,线性布局分为水平和垂直两种方向。...为0时,视图大小由自身确定,当layout_weight大于0时,视图在线性布局方向上根据比重拉伸 相对布局 相对布局是一种通过设置相对位置进行的布局,相对布局使用标签进行配置...,对应代码中的类是android.widget.RelativeLayout,布局中的视图通过设置相互间的相对位置进行排列,相对的排列位置,相对的对齐方式;相对布局使用拖放式比较方便。...设置该子组件在GridLayout的第几列 android:layout_columnSpan 设置该子组件在GridLayout横向上跨几列 android:layout_gravity 设置该子组件采用何种方式占据该网格的空间...android:layout_row 设置该子组件在GridLayout的第几行 android:layout_rowSpan 设置该子组件在GridLayout纵向上跨几行 通过网格布局实现如下图的视图界面
常用属性: android:id:为该组件添加一个资源id,即标识符,可以通过id来找到该布局或者控件。...android:gravity:控制组件所包含的子元素的对齐方式 android:layout_gravity:控制该组件在父容器里的对齐方式 android:background:为该组件添加一个背景图片或者背景颜色...:orientation="vertical" 时, 只有水平方向的设置才起作用,垂直方向的设置不起作用.即:left,right,center_horizontal 是生效的.当 android:orientation...其属性值分别为:center(整体居中)、center_vertical(垂直居中)、center_horizontal(水平居中)、right(居右)、left(居左)、bottom(底部)和top(...布局中也可以放置布局,通过多层布局的嵌套,实现比较复杂的界面。相信小伙伴儿们已经学会LinearLayout的使用方法了,那就赶紧操练起来吧。
PopupWindow实现更好~ -------------------------------------------------------------------------------------- 下面通过一个...Demo来实现这个需求~~ 效果图: 首先还是布局文件: 1、主界面: 我们只需要在界面的右上角放一个按钮来弹出PopupWindow ,注意 父容器需要有一个id,因为我们需要它来给PopupWindow设置弹出的位置...中的任意按钮,记得关闭此popupWindow, feedSelectPopupWindow.dismiss(); } }; /** * 设置添加屏幕的背景透明度...feedSelectPopupWindow = new SelectPopupWindow(this, selectItemsOnClick); // 设置...popupWindow 出现的时候 屏幕的透明度 ,设为0.5 即半透明 灰色效果 backgroundAlpha(0.5f); // 设置
属性 LinearLayout(线性布局)常用到的属性简单归纳一下: 属性名 解释 android:orientation 指定线性布局的方向(水平或者垂直) android:width 线性布局的容器宽度...:正中心 android:gravity="cente_verticalr" 指定线性布局中,子容器相对于父容器所在的位置为:垂直方向的正中心 android:gravity="center_horizontal...="center_horizontal" 指定线性布局中,子容器相对于父容器所在的位置为:水平方向的正中心 android:gravity="left" 指定线性布局中,子容器相对于父容器所在的位置为:...必须有设定好的高度或者宽度,因此不能直接设置为“@color/….”...LinearLayout的android:divider="@drawable/spacer_medium",并设置android:showDividers android:showDividers 属性值
要点: android:orientation="vertical"垂直线性布局,"horizontal"水平线性布局 android:gravity="top"(buttom、left、right、center_vertical...如果是没有子控件的控件设置此属性,表示其内容的对齐方式,比如说TextView里面文字的对齐方式;若是有子控件的控件设置此属性,则表示其子控件的对齐方式,gravity如果需要设置多个属性值,需要使用“...android:layout_gravity是指定本元素相对它的父元素的对齐方式。 ...android:layout_weight="1"通过设置控件的layout_weight属性以控制各个控件在布局中的相对大小,线性布局会根据该控件layout_weight值与其所处布局中所有控件layout_weight...值之和的比值为该控件分配占用的区域。
于是,小编就发奋图强,努力,努力,再努力,终于,将菜单改的漂亮了一点,不信你看看。 ? 看到了吧,面对这么漂亮的menu菜单你怎么会不心动呢?...="center_horizontal"> LinearLayout android:id="@+id/menu_update_btn" android:layout_width="wrap_content...> LinearLayout> LinearLayout> 布局完成之后,在想要出现menu的Activity添加onKeyDown事件,代码为: public boolean onKeyDown...menuWindow.showAtLocation(this.findViewById(R.id.mainmymusic), Gravity.BOTTOM|Gravity.CENTER_HORIZONTAL, 0, 0); //设置...layout在PopupWindow中显示的位置 //如何获取我们main中的控件呢?
>标签进行配置,对应代码中的类是android.widget.LinearLayout,线性布局分为水平和垂直两种方向。...为0时,视图大小由自身确定,当layout_weight大于0时,视图在线性布局方向上根据比重拉伸 相对布局 相对布局是一种通过设置相对位置进行的布局,相对布局使用标签进行配置...,对应代码中的类是android.widget.RelativeLayout,布局中的视图通过设置相互间的相对位置进行排列,相对的排列位置,相对的对齐方式;相对布局使用拖放式比较方便。...设置该子组件在GridLayout的第几列 android:layout_columnSpan 设置该子组件在GridLayout横向上跨几列 android:layout_gravity 设置该子组件采用何种方式占据该网格的空间...android:layout_row 设置该子组件在GridLayout的第几行 android:layout_rowSpan 设置该子组件在GridLayout纵向上跨几行 通过网格布局实现如下图的视图界面
线性布局是程序中最常见的布局方式之一, 线性布局可以分为水平线性布局和垂直线性布局两种,分别是通过android:orientation="horizontal"和android:orientation...:gravity=“bottom|right”(是本元素所有子元素的对齐方式,设置在父元素上,多个值用|隔开) android:layout_gravity (子元素在父元素的对齐方式,设置在子元素上)...当 android:orientation=“vertical” 时, 只有水平方向的设置才起作用,垂直方向的设置不起作用。...即:left,right,center_horizontal 是生效的。...> LinearLayout> 权重: android:layout_weight="1"通过设置控件的layout_weight属性以控制各个控件在布局中的相对大小,线性布局会根据该控件layout_weight