0

android:layout_...s 和 s 一起工作吗ImageView?从图片中您可以看到所有 10 行都在彼此的顶部,这意味着它q2Image不接受android:layout_below="@/q1Image"它的代码来下拉一行并为下一行加注星标。

我只是错过了什么,还是我试图做一些不可能的事情?

<ScrollView
    android:layout_width="fill_parent"
    android:layout_height="0dip"
    android:layout_weight="65"
    android:fillViewport="true" >

    <RelativeLayout 
        android:layout_width="fill_parent"   
        android:layout_height="wrap_content"> 

        <ImageView 
            android:id="@+id/q1Image"
            android:layout_width="10dp"
            android:layout_height="10dp"  /> 

        <TextView 
            android:id="@+id/q1Question"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_toRightOf="@id/q1Image" /> 

        <TextView 
            android:id="@+id/q1Answer"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"   
            android:layout_toRightOf="@id/q1Question"  /> 

        <TextView 
            android:id="@+id/q1Verse"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"   
            android:layout_toRightOf="@id/q1Answer"  /> 

        <View 
            android:layout_width="fill_parent"
            android:layout_height="1dp"       
            android:background="#C2BEBF" />

        <ImageView 
            android:id="@+id/q2Image"
            android:layout_width="10dp"
            android:layout_height="10dp"
            android:layout_below="@id/q1Image"  />

        <TextView 
            android:id="@+id/q2Question"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_toRightOf="@id/q2Image" /> 

        <TextView 
            android:id="@+id/q2Answer"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"   
            android:layout_toRightOf="@id/q2Question"  /> 

        <TextView 
            android:id="@+id/q2Verse"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"   
            android:layout_toRightOf="@id/q2Answer"  /> 

        <View 
            android:layout_width="fill_parent"
            android:layout_height="1dp"       
            android:background="#C2BEBF" />
//Above code is first 2 rows.  There are 10 rows total but I removed the code for rows 3-10 for this post.

在此处输入图像描述

4

3 回答 3

1

尝试将 + 放在 @ 和 id 之间,一切都必须没问题

@+id

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

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="horizontal" >

        <!-- here the columns -->
    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="horizontal" >

        <!-- here the columns -->
    </LinearLayout>
    .
    .

</LinearLayout>
于 2013-02-08T13:52:09.820 回答
0

您在代码中访问 id 的方式是正确的。“@+id”用于声明id。声明后对它的所有引用都应该是“@id”。您是否也遇到与 TextViews 相同的问题?我认为您也应该为 TextViews 设置 layout_below 属性。因为我可以看到文本也重叠在您的 UI 中。例如。,

<TextView 
        android:id="@+id/q2Question"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below = "@id/q1Question"
        android:layout_toRightOf="@id/q2Image" />

除非您为它指定 layout_below,否则 RelativeLayout 不会将视图放置在另一个视图下方。因此,您的 TextViews 出现重叠。

于 2013-02-08T14:45:46.550 回答
0

像这样引用 ID 并不总是有效。将“@id”替换为“@+id”。例子:

android:layout_below="@+id/q1Image"
于 2013-02-08T13:51:57.470 回答