您好我开始使用Android开发。我只是用ECLIPSE修改一个开源示例。我只修改了strings.xml和一些.png文件。在Android模拟器中它工作得很完美但是当我尝试生成签名的apk文件时,我收到两个类似描述的错误。这是其中之一(行标有*):
描述@ + id / about_us_desc_webview不是同一RelativeLayout中的兄弟姐妹cc3x_about_us.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
style="@android:style/Theme.Black.NoTitleBar.Fullscreen"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/grey_background"
android:orientation="vertical" >
<include
android:id="@+id/cc3x_about_header_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
layout="@layout/cc3x_headerlayout" />
<TextView
android:id="@+id/about_us_textview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/cc3x_about_header_view"
android:layout_centerHorizontal="true"
android:layout_marginTop="@dimen/about_title_label_top_margin"
android:text="@string/about_us_label"
android:textColor="@color/grey_text_color"
android:textSize="@dimen/extra_large_text_size"
android:textStyle="bold" />
<View
android:id="@+id/view1"
android:layout_width="fill_parent"
android:layout_height="@dimen/min_divider_height"
android:layout_below="@+id/about_us_textview"
android:layout_marginLeft="@dimen/about_title_label_side_margin"
android:layout_marginRight="@dimen/about_title_label_side_margin"
android:background="@drawable/about_page_divline" />
<WebView
android:id="@+id/about_us_desc_webview"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/view1"
android:layout_marginLeft="@dimen/about_title_label_side_margin"
android:layout_marginRight="@dimen/about_title_label_side_margin"
android:layout_marginTop="@dimen/min_margin_cutoff" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@+id/about_us_desc_webview" >
<TextView
android:id="@+id/about_screen_contact_label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
* android:layout_below="@+id/about_us_desc_webview"
android:layout_centerHorizontal="true"
android:text="@string/contact_label"
android:textColor="@color/grey_text_color"
android:textSize="25dip"
android:textStyle="bold" />
<View
android:id="@+id/divider_bottom"
android:layout_width="match_parent"
android:layout_height="@dimen/min_divider_height"
android:layout_below="@+id/about_screen_contact_label"
android:layout_marginLeft="@dimen/about_title_label_side_margin"
android:layout_marginRight="@dimen/about_title_label_side_margin"
android:background="@drawable/about_page_divline" />
<TextView
android:id="@+id/about_xcube_link"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/divider_bottom"
android:layout_margin="@dimen/max_margin_size"
android:autoLink="web"
android:text="@string/xcube_url"
android:textColor="@color/blue_text_color"
android:textColorLink="@color/blue_text_color"
android:textSize="10dip" />
<TextView
android:id="@+id/about_xcube_contact_email"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_below="@+id/divider_bottom"
android:layout_margin="@dimen/max_margin_size"
android:autoLink="email"
android:text="@string/xcube_contact_email"
android:textSize="@dimen/small_text_height" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/about_xcube_link"
android:layout_centerHorizontal="true"
android:gravity="center"
android:text="@string/about_xcube_address"
android:textColor="@color/grey_text_color"
android:textSize="@dimen/small_text_height" />
</RelativeLayout>
</RelativeLayout>
任何帮助都会被贬低。非常感谢!!
答案 0 :(得分:9)
该行
android:layout_below="@+id/about_us_desc_webview"
TextView中的是多余的。由于RelativeLayout已经具有该属性,因此它是无用的。你可以删除那一行,什么都不应该改变。
它产生错误的原因是,您可以使用相同布局中的元素应用下面,上面等等的功能。这里的“about_us_desc_webview”不在RelativeLayout中,你不能用RelativeLayout之外的东西在RelativeLayout中定位。
答案 1 :(得分:3)
<强> android:layout_below 强>
将此视图的上边缘定位在给定的锚点视图ID下方。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@color/colorWhite"
android:id="@+id/rl_rootHeader"
>
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/rl_Header"
android:layout_below="@+id/rl_rootHeader" // Arise ,In here RelativeLayout is Parent .
>
//
</RelativeLayout>
<ScrollView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:fillViewport="true"
android:id="@+id/scrollRoot"
android:background="@color/colorWhite"
>
</ScrollView>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@color/colorWhite"
android:id="@+id/rl_rootHeader"
>
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/rl_Header"
>
//
</RelativeLayout>
<ScrollView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:fillViewport="true"
android:id="@+id/scrollRoot"
android:background="@color/colorWhite"
android:layout_below="@+id/rl_rootHeader" // Call Here .This section is Child
>
</ScrollView>
答案 2 :(得分:0)
如果转到“属性”面板,您将看到布局:alignComponent的某些对齐方式显示为&#34;未找到&#34;。把它清理干净吧。在上面的示例属性窗口中 - &gt; textview - &gt; layout:alignComponent检查所有对齐值。
答案 3 :(得分:0)
只需删除导致布局错误的行 .xml文件
尝试刷新布局
您的布局可能会发生变化。您现在可以正确重置它。