You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

LinearLayout布局中Save按钮不显示,缺失了什么?

问题原因及解决方法

你的Save按钮看不到,核心原因是内容EditText(et_body)的高度设置为wrap_content,且未限制显示行数——它会完全展开显示所有长文本,占据了屏幕大部分甚至全部垂直空间,导致下方的Save和Cancel按钮被挤出屏幕可视区域。

解决方法

方法1:限制内容EditText的显示行数

给et_body添加最大行数和滚动条属性,让文本超出后可以滚动,避免占用过多空间:

<EditText
    android:id="@+id/et_body"
    android:background="@drawable/edit_text_border"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:textColor="@android:color/darker_gray"
    android:text="Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent nec est consequat arcu laoreet consequat non eget quam. Mauris ullamcorper odio id erat pharetra, sed auctor libero tempor. Sed sit amet justo facilisis nisl pharetra mollis. Donec vel felis eget dolor tristique consectetur at nec tortor. Donec eu finibus leo. Fusce non erat semper turpis tincidunt volutpat sit amet sit amet elit."
    android:justificationMode="inter_word"
    android:maxLines="10" <!-- 添加最大行数限制 -->
    android:scrollbars="vertical" <!-- 添加垂直滚动条 -->
    android:inputType="textMultiLine" /> <!-- 可选,明确多行输入类型 -->

方法2:用ScrollView包裹整个布局

如果希望保留所有控件的自然高度,同时允许整个页面滚动查看,可将LinearLayout嵌套在ScrollView中:

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".SecondFragment">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical">

        <TextView
            android:id="@+id/tv_title"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/title"
            android:layout_margin="12dp" />
        <EditText
            android:id="@+id/et_title"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="@string/edit_title"
            android:layout_margin="12dp" />

        <EditText
            android:id="@+id/et_body"
            android:background="@drawable/edit_text_border"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:textColor="@android:color/darker_gray"
            android:text="Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent nec est consequat arcu laoreet consequat non eget quam. Mauris ullamcorper odio id erat pharetra, sed auctor libero tempor. Sed sit amet justo facilisis nisl pharetra mollis. Donec vel felis eget dolor tristique consectetur at nec tortor. Donec eu finibus leo. Fusce non erat semper turpis tincidunt volutpat sit amet sit amet elit."
            android:justificationMode="inter_word"/>
        <Button
            android:id="@+id/button_save"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="16dp"
            android:text="@string/save"
            android:textAllCaps="false"
            style="?android:attr/buttonBarButtonStyle" />
        <Button
            android:id="@+id/button_cancel"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="@string/cancel"
            android:textAllCaps="false"
            style="?android:attr/buttonBarButtonStyle" />
    </LinearLayout>
</ScrollView>

方法3:给内容EditText设置固定高度

直接指定et_body的高度,让它不会无限制展开:

<EditText
    android:id="@+id/et_body"
    android:background="@drawable/edit_text_border"
    android:layout_width="match_parent"
    android:layout_height="250dp" <!-- 设置固定高度 -->
    android:textColor="@android:color/darker_gray"
    android:text="Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent nec est consequat arcu laoreet consequat non eget quam. Mauris ullamcorper odio id erat pharetra, sed auctor libero tempor. Sed sit amet justo facilisis nisl pharetra mollis. Donec vel felis eget dolor tristique consectetur at nec tortor. Donec eu finibus leo. Fusce non erat semper turpis tincidunt volutpat sit amet sit amet elit."
    android:justificationMode="inter_word"
    android:scrollbars="vertical" />

内容的提问来源于stack exchange,提问作者Kaleab Woldemariam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 13:50:26