Android:EditText取出剩余空间

时间:2014-08-27 15:57:50

标签: android android-layout

我有一个编辑文本项,我想占据屏幕的顶部(除了表示为按钮容器的区域之外的所有内容),但我真的很难这样做。我不想设置准确的高度(以dp为单位),因为我担心它们可能无法与其他设备很好地扩展。有什么想法吗?

Desired layout

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/myScreen"
    style="@style/Activity"
    android:layout_height="fill_parent">

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

        <EditText
            android:id="@+id/tbx"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="top|center_horizontal"
            android:hint="@string/video_note_hint"
            style="@style/TitleText_Second_NotBold">
        </EditText>
    </LinearLayout>

    <LinearLayout
        android:id="@+id/buttons"
        android:layout_width="match_parent"
        android:layout_height="@dimen/button_next_height_half"
        android:orientation="horizontal"
        android:gravity="center">

        <ImageButton
            android:id="@+id/delete_button"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_gravity="center"
            android:adjustViewBounds="true"
            android:layout_weight="1"
            android:scaleType="fitCenter"
            android:background="@drawable/icon_selector"
            android:src="@drawable/ic_action_discard"/>


        <ImageButton
            android:id="@+id/saveNote"
            android:layout_width="wrap_content"
            android:layout_height="@dimen/button_next_height_half"  <!-- 60dp -->
            android:scaleType="fitCenter"
            android:adjustViewBounds="true"
            android:background="@drawable/icon_selector"
            android:src="@drawable/ic_action_save" />
    </LinearLayout>

</LinearLayout>

修改我忘了包含一些样式:

<style name="TitleText_Second_NotBold" parent="@style/TitleText_Master">
    <item name="android:textSize">30sp</item>
</style>

<style name="TitleText_Master">
    <item name="android:gravity">center</item>
    <item name="android:layout_width">match_parent</item>
    <item name="android:layout_height">wrap_content</item>
    <item name="android:textColor">@color/black</item>
</style>

2 个答案:

答案 0 :(得分:1)

我会使用RelativeLayout并将文本的底部附加到按钮组。 http://developer.android.com/guide/topics/ui/layout/relative.html

答案 1 :(得分:1)

对于使用EditText的布局,请将height设置为0dp并添加android:layout_weight="1"