XML Android中的外观问题

时间:2011-10-04 17:19:56

标签: android

我希望屏幕看起来像这样:

![我想看到的] http://i.stack.imgur.com/E5L4g.png

我编写了以下代码来获得类似内容:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
 <ScrollView
   android:layout_width="fill_parent"
   android:layout_height="fill_parent"
   android:layout_weight="1"
   android:fillViewport="true">
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
        <EditText 
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:id="@+id/txtSendMail"
            android:layout_gravity="center"
            android:padding="10dip"
            android:text="mail@gmail.com">
        </EditText>
        <EditText 
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:id="@+id/txtSubjectMail"
            android:layout_gravity="center"
            android:padding="10dip"
            android:text="Escriba un asunto"
            >
        </EditText>
        <EditText 
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:id="@+id/txtBodyMail"
            android:layout_gravity="top"
            android:padding="10dip"
            android:text="Escribe el mensaje aquí."
            android:inputType="textMultiLine">
        </EditText>

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/btnSendMail"
            android:text="Send" >
        </Button>
    </LinearLayout>
</ScrollView>

但是当我写下包含邮件正文的EditText时,我就说了     安卓的inputType = “textMultiLine”     机器人:layout_height = “FILL_PARENT”

我看不到按钮。我确信“填充”父级的EditText正在隐藏它,但如果我希望EditText与屏幕的其余部分一样大,我不知道要设置什么属性......

谢谢!

1 个答案:

答案 0 :(得分:2)

我已经修改了你的xml了。我认为你的身体edittext应该滚动而不是整个布局。所以我删除了scrollview。这是xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
        <EditText 
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:id="@+id/txtSendMail"
            android:padding="10dip"
            android:text="mail@gmail.com">
        </EditText>
        <EditText 
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:id="@+id/txtSubjectMail"
            android:padding="10dip"
            android:text="Escriba un asunto"
            >
        </EditText>
        <EditText 
            android:layout_width="fill_parent"
            android:layout_height="0dip"
            android:layout_weight="1.0"
            android:id="@+id/txtBodyMail"
            android:padding="10dip"
            android:text="Escribe el mensaje aquí."
            android:inputType="textMultiLine">
        </EditText>

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/btnSendMail"
            android:layout_gravity="center_horizontal"
            android:text="Send" >
        </Button>
</LinearLayout>

如果你想要它更早,你可以使用你自己的xml注意身体edittext属性应该是

layout_height="0dip"
layout_weight="1.0"

这告诉父母该视图应该在所有其他子视图之后占用剩余空间。