无法在relativelayout中看到edittext(屏幕外)
问题描述:
我有下面的相对布局,它有一个带有EditText的列表视图。由于列表占用了整个屏幕,我无法看到编辑文本。无法在relativelayout中看到edittext(屏幕外)
如何在不滚动的情况下同时在屏幕上同时显示listview和edittext?
我已经尝试过无数的布局PARAMS
感谢
<?xml version="1.0" encoding="UTF-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:id="@+id/textviewassessments"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:textAppearance="?android:attr/textAppearanceLarge"
android:background="@color/blue_alpha_background"
android:textColor="#FFFFFF"
android:text="Assessments" />
<ListView
android:id="@+id/assessmentslist"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="15dp"
android:background="#8fff"
android:cacheColorHint="#0000"
android:padding="5dp"
android:divider="#FFCC00"
android:dividerHeight="4px"
android:layout_below="@id/textviewassessments" >
</ListView>
<EditText
android:id="@+id/editTextassessments"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="1"
android:lines="7"
android:inputType="textMultiLine"
android:hint="Please type any comments..."
android:layout_below="@id/assessmentslist" >
</EditText>
</RelativeLayout>
答
如果你想使用RelativLayout然后你应该把一个元素放在最下面,然后放置另一个元素。样品(未测试)
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<EditText
android:id="@+id/editTextassessments"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="1"
android:lines="7"
android:inputType="textMultiLine"
android:hint="Please type any comments..."
android:layout_alignParentBottom="true" /> <!-- this will put the element on the bottom of the screen -->
<TextView
android:id="@+id/textviewassessments"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:textAppearance="?android:attr/textAppearanceLarge"
android:background="@color/blue_alpha_background"
android:textColor="#FFFFFF"
android:text="Assessments"
android:layout_alignParentTop="true"
/> <!-- this will align the element to the head -->
<ListView
android:id="@+id/assessmentslist"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="15dp"
android:background="#8fff"
android:cacheColorHint="#0000"
android:padding="5dp"
android:divider="#FFCC00"
android:dividerHeight="4px"
android:layout_below="@id/textviewassessments"
android:layout_above="@id/editTextassessments"
/> <!-- this will put the the list between the both elements and stretch its size due match parent -->
</RelativeLayout>
+0
辉煌,它的作品!奇怪的方式关闭它:)谢谢 – turtleboy 2015-02-06 16:43:13
答
更改EditText
并使其与底部。现在,你告诉它低于列表,所以如果列表占据了全高,那么就没有空间了。
<EditText
android:id="@+id/editTextassessments"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="1"
android:lines="7"
android:inputType="textMultiLine"
android:hint="Please type any comments..."
android:layout_alignParentBottom="true" > //here
</EditText>
如果你希望它是下面的列表中无论是什么(即使该列表不填充整个屏幕),那么你可能想使用addFooterView()
答
尝试:
<EditText
android:id="@+id/editTextassessments"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="1"
android:lines="7"
android:inputType="textMultiLine"
android:hint="Please type any comments..."
android:gravity="bottom"
android:layout_alignParentBottom="true" >
</EditText>
你可以改变的RelativeLayout到的LinearLayout和使用重量。 – Muthu 2015-02-06 16:32:30
嗨,是的,我想我可以但我交集为什么当我指定android:layout_below =“@ id/assesslist”,edittext不显示在listview下面? – turtleboy 2015-02-06 16:35:16
我觉得Listview充分的高度。所以你的EditText在它下面。 – Muthu 2015-02-06 16:36:49