java - 一种布局将另一种布局推离屏幕

标签 java android layout user-interface

目前我正在开发一个小型的 Android 项目。我遇到了布局问题,因为我必须用 Java 创建用户界面。我有 2 个布局,第一个是水平方向的 LinearLayout,另一个是 TableLayout。我为它们设置了宽度 MATCH PARENT 和高度 WRAP CONTENT ,但第一个布局将另一个布局推离屏幕,我希望第一个布局将另一个布局推到他下面。

代码如下所示:

    LinearLayout mainLayout = new LinearLayout(this);

    LinearLayout hLayout = new LinearLayout(this);
    hLayout.setOrientation(LinearLayout.HORIZONTAL);

    LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT,
    LayoutParams.WRAP_CONTENT); 
    hLayout.setLayoutParams(params);

    mainLayout.addView(hLayout);

    TableLayout table = new TableLayout(this);

    params = new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT);

    table.setLayoutParams(params);

    mainLayout.addView(table);
    setContentView(mainLayout);

最佳答案

您似乎没有将 hLayout 添加到任何内容,因此它不会被推离屏幕,但从未添加到内容 View 中。尝试类似的事情

mainLayout.addView(table);
mainLayout.addView(hLayout);
setContentView(mainLayout);

此外,由于宽度为 match_parentLinearLayout 的默认 orientation 为水平,因此您需要更改 mainLayout 的orientation 更改为垂直,或将width 更改为wrap_content

您以编程方式执行此操作有什么原因吗?在 xml 中创建布局通常要容易得多。

关于java - 一种布局将另一种布局推离屏幕,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18263317/

相关文章:

android - 为什么 imageview 在布局上消失了?

ios - Swift - 以编程方式在大屏幕上显示 UIButton 图像

java - iterator.next() 返回替代对象

java - 当一个线程不断向另一个线程发送数据时,如何保证同步?

java - LiquidInf jar 文件

android - Camera2 API 设置自定义白平衡和色温

android - 将依赖项添加到gradle的正确方法

html - CSS 列,从上到下然后从左到右

java - 除了使用 GridBagConstraints 之外,还有更精确的方法来放置 JButton 吗?

java - AWS DynamoDB 中的 AccessDeniedException