在布局文件中排序元素

时间:2015-07-30 09:24:00

标签: android xml

我一直在尝试布置我的元素,使按钮占据屏幕的底部,其余的元素以连续的方式排列在屏幕的顶部,但没有成功。最后一个EditExt(opedt)总是显示在屏幕中间某处的其他位置。按要求的顺序进行哪些更改? 这是我的XML布局文件:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
    android:background="@drawable/beezlinkbackg"
    android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:paddingBottom="@dimen/activity_vertical_margin"
    tools:context="gsie.beezlink.OpportunityActivity">

    <RelativeLayout
        android:id="@+id/footer"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:gravity="center" >
        <Button
            android:layout_width= "match_parent"
            android:layout_height="wrap_content"
            android:text="@string/posterbtn"
            android:background="#008000"
            android:id="@+id/posterbtn"
             />

    </RelativeLayout>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/cinteretxt"
        android:textSize="20sp"
        android:textStyle="bold"
        android:id="@+id/cinteretxt"
        android:layout_alignParentTop="true"
      />

    <Spinner
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/cinteretspin"
        android:layout_below="@+id/cinteretxt"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true" />
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/optitretxt"
        android:textSize="20sp"
        android:textStyle="bold"
        android:id="@+id/optitretxt"
        android:layout_below="@+id/cinteretspin"
        />
    <EditText
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/optitreedt"
        android:layout_below="@+id/optitretxt"
        android:hint="@string/hintoptitre"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true" />
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/optxt"
        android:textSize="20sp"
        android:textStyle="bold"
        android:id="@+id/optxt"
        android:layout_below="@+id/optitreedt"
        />
    <EditText
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/opedt"
        android:hint="@string/hintpost"
        android:layout_below="@+id/optxt"
        android:layout_above="@+id/footer"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true" />

</RelativeLayout>

编辑:看起来我没有经过良好测试就获得了积分。当我在最后一个EditText(opedt)中键入长文本时,它与底部的按钮重叠。文本位于按钮顶部。我希望文本在到达按钮之前停止并滚动。

3 个答案:

答案 0 :(得分:0)

从按钮中删除RelativeLayout-wrapper并将以下属性添加到按钮:android:layout_alignParentBottom="true"

答案 1 :(得分:0)

您可以使用以下代码始终在视图底部创建按钮,其他元素将以有序格式显示在顶部。

FB.init({
    appId      : '{app-id}',
    cookie     : true,  // enable cookies to allow the server to access 
    xfbml      : true,  // parse social plugins on this page
    version    : 'v1.0' // use version 2.2
});
function testAPI() {
    FB.login(function(response){
        FB.api("/me/friends", function (response) { 
            console.log(response);
        });
    },{scope: 'user_friends'});
//  FB.api('/me/feed', 'post', {message: 'Hello, world!'}, function(){
        //  console.log(response);
//  });
}

<fb:login-button scope="public_profile,user_friends" onlogin="checkLoginState();" data-auto-logout-link="true"></fb:login-button>

干杯..!

答案 2 :(得分:0)

如果您的内容不在视野范围内,您可以使用滚动视图

<RelativeLayout
    android:layout_above:"@+id/posterbtn"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
   >

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/cinteretxt"
    android:textSize="20sp"
    android:textStyle="bold"
    android:id="@+id/cinteretxt"
    android:layout_alignParentTop="true"
  />

<Spinner
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/cinteretspin"
    android:layout_below="@+id/cinteretxt"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true" />
<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/optitretxt"
    android:textSize="20sp"
    android:textStyle="bold"
    android:id="@+id/optitretxt"
    android:layout_below="@+id/cinteretspin"
    />
<EditText
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/optitreedt"
    android:layout_below="@+id/optitretxt"
    android:hint="@string/hintoptitre"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true" />
<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/optxt"
    android:textSize="20sp"
    android:textStyle="bold"
    android:id="@+id/optxt"
    android:layout_below="@+id/optitreedt"
    />
<EditText
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/opedt"
    android:hint="@string/hintpost"
    android:layout_below="@+id/optxt"
    android:layout_above="@+id/footer"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true" />

</RelativeLayout>
    <Button
        android:layout_alignParentBottom="true"
        android:layout_width= "match_parent"
        android:layout_height="wrap_content"
        android:text="@string/posterbtn"
        android:background="#008000"
        android:id="@+id/posterbtn"
         />