0

所以我遇到了一个让我发疯的问题。知道我的应用程序的用途并不重要/不相关,所以我只需从 xml 文件中粘贴我的代码。布局是一个RelativeLayout,但我遇到的问题是在这个里面LinearLayout。代码:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="@drawable/background_orange"
android:id="@+id/rel_layout" >

<RelativeLayout
    android:id="@+id/layout_1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_alignParentTop="false"
    android:layout_centerHorizontal="true">

    <ImageView 
        android:id="@+id/component_1"
        android:layout_height="wrap_content"
        android:layout_width="fill_parent"
        android:layout_centerHorizontal="true"
        android:layout_alignParentBottom="true"
        android:src="@drawable/source1"
    />
    <ImageView
        android:id="@+id/component_2"
        android:layout_height="wrap_content"
        android:layout_width="match_parent"
        android:layout_above="@id/component_1"
        android:src="@drawable/source2"
        android:layout_alignRight="@id/component_1"
        android:layout_marginRight="-50dip"
        android:layout_marginBottom="-25dip"
    />
</RelativeLayout>

<LinearLayout 
    android:id="@+id/problemIsHere"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_centerInParent="true"
    android:orientation="horizontal"
    >
    <EditText
        android:id="@+id/edit_text"
        android:layout_width="0dip"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:hint="What&apos;s your question?"
        android:imeOptions="actionDone"
        android:inputType="textCapSentences|textAutoComplete"
        android:textSize="25sp"
        android:layout_gravity="left"
        android:textStyle="bold" />

    <ImageButton 
        android:id="@+id/image_button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginRight="5dip"
        android:layout_weight="0"
        android:layout_gravity="right"
        android:background="@drawable/source3"
    />
</LinearLayout>
<RelativeLayout 
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true"
    android:layout_below="@id/problemIsHere"
    android:gravity="center"
    >
    <ImageView
        android:id="@+id/image_view"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/source4"
        android:onClick="computeUserInput" />

    <ImageButton
        android:id="@+id/image_button0"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_toRightOf="@id/image_view"
        android:layout_alignTop="@id/image_view"
        android:layout_marginLeft="-2dip"
        android:background="@drawable/voice_recognition_touse" 
        />
</RelativeLayout>

同样,它嵌套在父级内部,RelativeLayout. 在预览中,当单击“图形布局”选项卡时,这看起来正是我想要的;EditText在小的左侧ImageButton,具有正确的比例和边距。但是,当我在我的设备上运行它时,它LinearLayout是 REVERSED,这意味着现在它EditTextImageButton. 不过,比例和边距仍然准确。有谁知道这里出了什么问题?

注意:我已经清理并刷新了我的项目;这是无效的。我也试过删除layout_gravity属性,但什么也没做。

谢谢

4

0 回答 0