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

Android View在没有XML的情况下对齐底部(以编程方式)

在没有XML的情况下,您可以使用以下方法在Android中以编程方式对齐View底部:

  1. 使用RelativeLayout:RelativeLayout relativeLayout = new RelativeLayout(this); RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams( RelativeLayout.LayoutParams.MATCH_PARENT, RelativeLayout.LayoutParams.MATCH_PARENT ); relativeLayout.setLayoutParams(layoutParams); TextView textView = new TextView(this); textView.setText("Hello World!"); RelativeLayout.LayoutParams textViewLayoutParams = new RelativeLayout.LayoutParams( RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT ); textViewLayoutParams.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM, RelativeLayout.TRUE); textView.setLayoutParams(textViewLayoutParams); relativeLayout.addView(textView);
  2. 使用ConstraintLayout:ConstraintLayout constraintLayout = new ConstraintLayout(this); ConstraintLayout.LayoutParams layoutParams = new ConstraintLayout.LayoutParams( ConstraintLayout.LayoutParams.MATCH_PARENT, ConstraintLayout.LayoutParams.MATCH_PARENT ); constraintLayout.setLayoutParams(layoutParams); TextView textView = new TextView(this); textView.setText("Hello World!"); ConstraintLayout.LayoutParams textViewLayoutParams = new ConstraintLayout.LayoutParams( ConstraintLayout.LayoutParams.WRAP_CONTENT, ConstraintLayout.LayoutParams.WRAP_CONTENT ); textViewLayoutParams.topToTop = ConstraintLayout.LayoutParams.PARENT_ID; textViewLayoutParams.bottomToBottom = ConstraintLayout.LayoutParams.PARENT_ID; textView.setLayoutParams(textViewLayoutParams); constraintLayout.addView(textView);

这两种方法都可以在没有XML的情况下对齐View底部。您可以根据您的需求选择合适的方法。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

两种对齐方式,layout_gravity和gravity大不同

一、LinearLayout对齐 gravity控制组件重心,也叫对齐方式,表示view横向和纵向停靠位置。主要通过以下两个属性来控制。...android:gravity:是对view组件本身来说,是用来设置组件本身内容应该显示组件什么位置,默认值是左侧。...垂直对齐方式:垂直方向上居中对齐。 fill_vertical:必要时候增加对象纵向大小,完全充满其容器。垂直方向填充。 center_horizontal:将对象横向居中,不改变其大小。...水平对齐方式:水平方向上居中对齐。 fill_horizontal:必要时候增加对象横向大小,完全充满其容器。水平方向填充。 center:将对象横纵居中,不改变其大小。...剪切基于其纵向对齐设置:顶部对齐时剪切底部底部对齐时剪切顶部;除此之外剪切顶部和底部。垂直方向裁剪。 clip_horizontal:附加选项,用于按照容器边来剪切对象左侧和/或右侧内容。

3K90

Android Notes|细数「八大布局」那些事儿

这些约束允许一个 View 基于某个 View 进行定位,同样我们可以水平方向以及垂直方向进行约束 View: 水平轴: 左,右,起点和终点 垂直轴: 顶部,底部和文本基线 如下,实现将 B 按钮定位在...3.目标 View 隐藏时,当前 View 边距 Margins 当目标 View 可见性为 View.GONE 时,还可以使用以下属性设置当前 View 在前者 GONE 情况下 margin...] 二、LinearLayout ⭐️⭐️⭐️⭐️ LinearLayout 是行内水平方式/垂直方式排列布局容器。...常用属性一览: 属性 作用 android:orientation 行内排列方式(horizontal/vertical),默认水平排列 android:gravity 行内 View 对齐方式 android...比较重要几个属性: android:layout_gravity: 子 View 对齐方式 android:foreground: 前景图 android:foregroundGravity: 前景图位置

1.8K00

Android开发笔记(一百四十九)约束布局ConstraintLayout

,下面分别介绍约束布局这几种使用方式画板上拖曳控件 设计师通过工具软件三两下就勾勒出界面原型,程序员却得一个控件一个控件地小心布局,并对控件位置不断微调符合原型上尺寸比例。...Android原先界面手工编码一直为人所诟病,因为“所见即所得”才是界面编码理想方式,比如iOS很早就在Xcode中集成了故事板,使得iOS程序员能够像设计师那样画板上拖动控件,从而加快了界面编码工作效率...XML文件中调整控件布局 传统布局如线性布局、相对布局基本是XML文件中手工添加控件节点,约束布局当然也允许布局文件中指定控件相对位置,这跟相对布局内部控件位置调整类似,只不过用来表示位置属性换了个名字罢了...: 该控件右侧与另一个控件右侧对齐 下面是一个运用约束布局XML文件例子: <android.support.constraint.ConstraintLayout xmlns:android...,无法单独设置某个方向间距; 3、布局参数启用时立即生效,没有渐变过程,让用户觉得很突兀。

2K20

android常用布局详解「建议收藏」

大家好,又见面了,我是你们朋友全栈君。 view和布局 一个Android应用程序中,用户界面通过View和ViewGroup对象构建。...View布局显示方式直接影响用户界面,View布局方式是指一组View元素如何布局,准确说是一个ViewGroup中包含一些View怎么样布局。...” android:layout_alignParentTop 控件顶部与父控件顶部对齐; android:layout_alignParentBottom 控件底部与父控件底部对齐; android...:layout_alignBottom 控件底部边缘与给定ID底部边缘对齐; android:layout_alignLeft 控件左边缘与给定ID左边缘对齐; android:layout_alignRight...fill_parent 跟随父窗口match_parent (4) gravity 用于设置View组件里面内容对齐方式,控件内容对齐方式 top bottom left right center

1.8K40

详解Android ConstraintLayout 约束布局用法

前言 2016年Google I/O大会上 , Google 发布了Android Studio 2.2预览版,同时也发布了Android布局方案 ConstraintLayout , 但是最近一年也没有大规模使用...XML代码完成,虽然Android Studio也支持可视化方式来编写界面,但是操作起来并不方便,我也一直都不推荐使用可视化方式来编写Android应用程序界面。...它和传统编写界面的方式恰恰相反,ConstraintLayout非常适合使用可视化方式来编写界面,但并不太适合使用XML方式来进行编写。...layout_constraintBottom_toBottomOf // 将所需视图底部与另一个视图底部对齐。...layout_constraintRight_toBottomOf // 将所需视图对齐到另一个底部

3.8K20

腾讯开源超实用UI轮子库,我是轮子搬运工

item 右侧显示一个开关或箭头或自定义View QMUIDialog 提供了一系列常用对话框,解决了使用系统默认对话框时不同 Android 版本上表现不一致问题。...控制子 View 水平对齐方向(左对齐/居中/右对齐)。 限制子 View 个数或行数。...提供了以下功能: 更多可参考 wiki 文档 左侧/右侧添加图片按钮/文字按钮/自定义View。 设置标题/副标题,且支持设置标题/副标题水平对齐方式。...QMUICustomTypefaceSpan 支持 Typeface 方式设置 span 字体,实现自定义字体效果。...AbsoluteSizeSpan 可以调整字体大小,但在中英文混排下由于decent不同,无法根据具体需求进行底部对齐或者顶部对齐

4.7K30

强大ConstraintLayout:使用ConstraintLayout打造响应式UI

虽然可以通过给文本控件设置居中对齐方式来规避,但终究不是完美的解法。...-- 普通情况下:字全显示,线最长宽度显示,两边有空白 --> 每个字都看懂,但如果没有设计稿辅助理解,就会发现:语言真的很苍白。 紧接着又翻出了实现代码: <!...屏幕高度过长(小于9:16)情况下,对于多出来高度部分,优先分配给底部面板,直到底部面板到达最大值,再将剩余高度分配给中间预览区域; 1.3....对于头部区域/底部区域消失场景,设计上是希望中部区域直接对齐到父布局顶部/底部,而实际上,这个约束关系并没有指定,导致了预期外情况3出现(情况1、情况2只是碰巧没关系罢了)。

2.9K21

超全Android组件及UI框架

LinearLayout 线性布局 LinearLayout 几个重要 XML 属性 xml 属性    说明 android:id    为组件设置一个资源 id,然后 Java 中可以通过 ...:gravity    设置布局管理器内组件对齐方式,值可以是 top/button/left/right/center_vertical/fill_vertical......基本属性 XML 属性    说明 android:gravity    设置容器内组件排序方式 android:ignoreGravity    如果设置改属性为 true,将忽略 android...2.根据父容器定位属性: XML 属性    说明 android:layout_alignParentLeft    左对齐父容器 android:layout_alignParentRight    ...右对齐父容器 android:layout_alignParentTop    顶部对齐父容器 android:layout_alignParentBottom    底部对齐父容器 android

6.1K30

Android入门教程 | UI布局之RelativeLayout 相对布局

RelativeLayout 和 LinearLayout 类似,都是 ViewGroup,能“容纳”多个子view。 RelativeLayout 是一个相对位置显示子视图视图组。...每个视图位置可以指定为相对于同级元素位置(例如,另一个视图左侧或下方)或相对于父级 RelativeLayout 区域位置(例如在底部、左侧或中心对齐)。...默认情况下,所有子视图均绘制布局左上角,因此必须使用 RelativeLayout.LayoutParams 中提供各种布局属性定义每个视图位置。...android:layout_toRightOf 将此视图左边缘放置使用资源 ID 指定视图右侧。 示例: 为了让UI好看一点,先定义一下样式,style.xml文件中新增一个style。...子View设置了不同属性,分布View上下左右中各个地方。

2.7K20

Android 应用开发】AndroidUI设计之 布局管理器 - 详细解析布局实现

是父容器用来控制子组件属性. 如android:layout_gravity 是控制组件本身对齐方式, android:gravity是控制本容器子组件对齐方式; ....包含子元素可以执行下面的属性. (1) 对齐方式 xml属性 : android:layout_gravity; 作用 : 指定该元素LinearLayout(父容器)对齐方式, 也就是该组件本身对齐方式...: android:后面没有layout属性基本都是容器属性, android:gravity作用是指定指定本元素包含子元素对齐方式, 只有容器才支持这个属性; 5....RelativeLayout支持属性 (1) 对齐方式 xml属性 : android:gravity; 设置方法 : setGravity(int); 作用 : 设置布局容器内子元素对齐方式, 注意与..., 沿长宽方向排列像素,密度低屏幕像素少,密度高屏幕像素多; 如果像素为单位, 同一个按钮高密度屏幕 要比 低密度屏幕要大.

2.4K40

RecyclerView 居然还能实现吸底效果

(如果没有通过getItemOffsets设置偏移的话,Item内容会将其覆盖) ItemDecoration#onDrawOver:通过该方法,Canvas上绘制内容,Item之后调用。...然后我们就可以onDrawOver获取第一个可见Item头部View,接着复用这个头部View,将其绘制顶部即可。 接下来对这两种方式进行介绍。...多数情况下,lastView跟lastVisibleView不是同一个,只有最后一个可见View底部刚好达到RecyclerView下边界时候,lastView跟lastVisibleView就是同一个了...默认情况下,悬浮View会绘制lastVisibleView内部,跟lastVisibleView底部对齐。...我们lastView.getTop值-悬浮View高度结果作为绘制悬浮Viewtop值,所以悬浮View相当于一直悬浮在lastView顶部。

3K20

速读原著-Android应用开发入门教程(布局(Layout))

左图程序使用了默认布局参数,因此是上对齐和左对齐效果,中图程序使用了 android:layout_gravity为底部对齐,右图中使用了两个布局嵌套方式: <LinearLayout xmlns...以上不同元素位置控制通过定义android:layout_gravity 属性来完成,android:layout_gravity 可以各个 View 中使用:top、bottom、left、right...="horizontal"定义屏幕中方向为水平,并设置竖直方向为"fill_parent",因此其中内容竖直方向显示。...="@id/view1" android:text="@string/relative_layout_1_center"/> 右图中两个按钮使用了相对对齐方式...这种表单布局,其实是用了类似 HTML中表格方式,这样可以准确地完成复杂对齐问题。

82130

Android样式开发:drawable汇总篇

看看bitmap标签一些属性吧: android:src 必填项,指定图片资源,只能是图片,不能是xml定义drawable资源 android:gravity 设置图片对齐方式,比如在layer-list...中,默认会尽量填满整个视图,导致图片可能会被拉伸,为了避免被拉伸,就可以设置对齐方式,可取值为下面的值,多个取值可以用 | 分隔: top 图片放于容器顶部,不改变图片大小 bottom 图片放于容器底部...垂直方向上拉伸图片填满容器整个高度 fill_horizontal 水平方向上拉伸图片填满容器整个宽度 clip_vertical 附加选项,裁剪基于垂直方向gravity...android没有提供直接在xml里设置level属性,这需要通过代码去设置。举例用法如下: 定义clip.xml: <?xml version="1.0" encoding="utf-8"?...另外,如果在ActivityonCreate()方法里直接调用start()方法会没有效果,因为view没有初始化完成是播放不了动画

2.2K10

自定义View:手撸一个带FAB凹槽底部导航栏

设计思路 既然玩那就干脆玩花一点,一步到位给中间按钮加了个简单点击动画,点击后FAB垂直方向上执行一次往返位移,同时底部导航栏上凹槽大小跟随着FAB凹陷深度动态变化,需要实现功能点以及思路大体是下面的几个...特性,设置底部导航栏作为FAB参照物方便对齐停靠; FAB位移动画以及导航栏凹陷动态变化:自定义导航栏形状,根据FAB凹陷深度来动态绘制导航栏。... 到这一步底部导航栏跟页面的基本交互也算完成了 导航栏中间大按钮停靠 之前已经导航栏上留好了放置大按钮位置,接下来就是想办法把这个按钮塞进去,并且设置按钮中心点与导航栏顶部居中对齐...只不过这看似挺简单效果,设计路径和计算相关尺寸大小实践起来还是挺麻烦废弃了n种方案之后决定出采用以下一种: 如上图所示,橙色实线为底部导航栏目标形状,canvas绘制原点默认左上角,整个形状直线部分路径比较好确定...值,由此一来可以达到凹槽收缩效果,按钮向下运动时同理: 另外还需要考虑按钮完全位于导航栏上方时情况,这种情况下直接使用直线来代替原来曲线部分。

12110

再学一次ConstraintLayout 一些新特性

image.png 二、与父亲边缘对齐 当需要子view放在父view底部或者最右侧时....image.png 可能你也想到了,居中对齐其实就是2个对齐方式相结合.最后产生效果....image.png Bias(偏向某一边) 上面的水平居中,是使用与父亲左侧对齐+与父亲右侧对齐. 可以理解为左右有一种约束力,默认情况下,左右力度是一样大,那么view就居中了....这个就比较牛逼了,可以角度和距离约束某个view中心相对于另一个view中心, 可能比较抽象,来看看谷歌画图: ?...比如下面的姓名和联系方式,右侧EditText是肯定需要左侧对齐,左侧2个TextView可以看成一个整体,Barrier会在最宽那个TextView右边,然后右侧EditTextBarrier

1.6K40

Android从零单排系列二十九】《Android布局介绍——LinerLayout》

在这种情况下,Button权重是TextView两倍,所以Button会占据 以下是LinearLayout特点和使用方法总结: 方向:LinearLayout可以水平方向(horizontal...布局属性:通过子视图布局参数中设置不同权重、对齐方式和填充方式,可以灵活控制每个子视图LinearLayout中位置和大小。...android:dividerPadding:设置分隔线间距。 这些方法和属性可以用于灵活地控制LinearLayout布局方向、对齐方式、权重分配等,满足不同布局需求。...其中,方法可以通过编程方式进行设置,而属性可以XML布局文件中进行设置。...通过android:layout_gravity属性可以调整子视图父容器内对齐方式

21830
领券