我很难调试一个非常简单的问题。我有一个活动的布局,其中有EditText
和EditText
下方的按钮来执行操作。问题是,我在EditText
中输入长句,它常常在高处增长,按钮被推到屏幕下方。这是我的布局文件:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#231f20">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="#FAC80A"
android:elevation="4dp">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/imageView176"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="30dp"
android:src="@drawable/cta_ic_notifications_grey" />
<TextView
android:id="@+id/textView109"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:text="Help"
android:textColor="#231f20"
android:textSize="20sp" />
</RelativeLayout>
</android.support.v7.widget.Toolbar>
<TextView
android:id="@+id/textView22"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/toolbar"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:layout_marginTop="20dp"
android:layout_marginBottom="60dp"
android:alpha="0.8"
android:text="We are here to help! We have recently launched the app and it is in beta. Not all features may be working in an optimal manner.In the meantime, if you have any feedback, or if there is any help you need, please reach out to us:"
android:textColor="#FFFFFF"
android:textSize="17sp" />
<ImageView
android:id="@+id/imageView50"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="30dp"
android:layout_marginBottom="70dp"
android:src="@drawable/help_contact_button_send_in_active" />
<ScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/scrollView"
android:layout_above="@+id/imageView50"
android:layout_below="@+id/textView22">
<EditText
android:id="@+id/editText10"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:hint="How can we help you today?"
android:inputType="textCapSentences|textMultiLine"
android:textColor="#FFFFFF"
android:textColorHint="#707070"
android:theme="@style/EditTextStyle" />
</ScrollView>
</RelativeLayout>
我想要的是,发送按钮应始终在底部可见,无论我在EditText
中键入多长时间,它都应滚动并限制在标题TextView
和{{之间1}}按钮。在这个特殊的布局中,一旦我开始输入,发送按钮就会出现在顶部,我无法看到我输入的任何内容,只有在关闭键盘后,我才能看到文本并在其下方发送按钮。
答案 0 :(得分:1)
在scrollview中你正在使用Edittext,而scrollview有高度wrap_content,这就是它发生的原因。要解决此问题,您可以删除scrollview并像这样定义editText
<EditText
android:id="@+id/add_task_notes"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="15dp"
android:layout_marginTop="10dp"
android:fontFamily="sans-serif-bold"
android:hint="Notes"
android:inputType="textCapSentences|textMultiLine"
android:maxLines="5"
android:scrollbars="vertical"
android:textColor="@color/edit_text_color"
android:textSize="@dimen/edit_text_font_size"></EditText>
此Edittext将提供可滚动文本和最大可见行
如果要使整个布局可滚动,请将ScrollView作为父布局
答案 1 :(得分:0)
您应该使用垂直LinearLayout
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" ></LinearLayout>
ScrollView中的
您的代码如下.............
<ScrollView
android:id="@+id/scrollView1"
android:layout_width="wrap_content"
android:layout_height="match_parent" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/textView1"
android:layout_width="320dp"
android:layout_height="wrap_content"
android:text="TextView" />
<EditText
android:id="@+id/editText1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10" >
<requestFocus />
</EditText>
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button" />
</LinearLayout>
</ScrollView>