我如何将视图对齐到屏幕底部?

37 浏览
0 Comments

我如何将视图对齐到屏幕底部?

这是我的布局代码:



    
    
    
            
            
            
    

左边是实际效果,右边是我想要的效果。

\"Android

显而易见的答案是将TextView的高度设置为fill_parent,但这会导致没有剩余空间留给按钮或输入字段。

问题本质上是我希望提交按钮和文本输入保持固定高度位于底部,而文本视图则填充其余空间。同样,在水平线性布局中,我希望提交按钮包裹其内容,而文本输入则填满其余空间。

如果线性布局中的第一个项被告知填满parent,则会完全填满,不留空间给其他项。如何使在线性布局中第一个项填充除布局中其余项所需最小空间以外的所有空间?


相对布局确实是答案:

    
    
    
    
    
        
        
        
    

admin 更改状态以发布 2023年5月22日
0
0 Comments

\n\n在 ScrollView 中,这是行不通的,因为 RelativeLayout 会重叠在页面底部的 ScrollView 的任何内容上。\n我使用一个动态伸展的 FrameLayout 来解决了它:\n


    
                
                
        
        
                
        
                                   
        
    

0
0 Comments

现代的做法是使用 ConstraintLayout,并使用 app:layout_constraintBottom_toBottomOf="parent" 将视图的底部限制在 ConstraintLayout 的底部。

以下示例创建一个 FloatingActionButton,将被对齐到屏幕的末尾和底部。




为了参考,我将保留我以前的回答。

在 ConstraintLayout 引入之前,答案是一个 相对布局


如果您有一个填充整个屏幕的相对布局,则应该可以使用 android:layout_alignParentBottom 将按钮移动到屏幕底部。

如果底部的视图不在相对布局中显示,那么可能是上面的布局占据了所有的空间。在这种情况下,可以首先将应该在底部的视图放在布局文件中,并使用 android:layout_above 定位其余的布局在这些视图的上方。这使底部视图可以占用所需的所有空间,而其他布局可以填充屏幕的所有其余空间。

0