<?xml version="1.0" encoding="utf-8"?>
<!-- Layout-Normal-Portrait -->
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@color/white"
android:orientation="vertical" >
<RelativeLayout
android:id="@+id/thumb_layout"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<android.support.v4.view.ViewPager
android:id="@+id/mypager"
android:layout_width="fill_parent"
android:layout_height="300dp"
android:layout_above="@id/sum_layout"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true" >
</android.support.v4.view.ViewPager>
</RelativeLayout>
<RelativeLayout
android:id="@+id/sum_layout"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_below="@id/thumb_layout" >
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="6dp"
android:text="@string/lorem__ipsum"
android:textColor="@color/black" />
</RelativeLayout>
</RelativeLayout>
当我运行该程序时,它在编辑器中显示错误“错误:错误:找不到与给定名称匹配的资源(在'layout_above'处,值为'@id / sum_layout')。 “此代码中的第22行。
任何人都能说出来,出了什么问题?
答案 0 :(得分:3)
我想知道为什么你这么复杂。
无论如何这里是纠正的片段
<?xml version="1.0" encoding="utf-8"?>
<!-- Layout-Normal-Portrait -->
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent" > <---No need to specify android:orientation
<android.support.v4.view.ViewPager
android:id="@+id/mypager"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_above="@+id/textView" />
<TextView
android:id="@+id/textView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:padding="6dp"
android:text="Hello"
android:textColor="@android:color/black" /> <---Place your text String here
</RelativeLayout>
答案 1 :(得分:0)
使用@+id/sum_layout
并清理Project并再次运行!
答案 2 :(得分:0)
这是因为你在第一次引用之后声明了sum_layout id。 最好的解决方案是在/res/values/ids.xml中声明它,如下所示:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<item type="id" name="sum_layout" />
</resources>
然后在没有+关键字
的所有布局中引用它 <android.support.v4.view.ViewPager
android:layout_above="@id/sum_layout"
/>
并且
<RelativeLayout android:id="@id/sum_layout" />
答案 3 :(得分:0)
试试这个
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@color/white"
android:orientation="vertical" >
<android.support.v4.view.ViewPager
android:id="@+id/mypager"
android:layout_width="fill_parent"
android:layout_height="300dp"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true" >
</android.support.v4.view.ViewPager>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="6dp"
android:textColor="@color/black" />
答案 4 :(得分:0)
当您使用相对布局时,您将控件相互关联。当您添加任何控件时,您将根据之前定义的控件添加下一个控件。在这里您已经定义了视图分页器布局,该布局具有id @ + ID / sum_layout。但你已经在viewr页面下定义了布局@ + id / sum_layout.so它没有得到id @ + id / sum_layout,所以它如何在文本视图下设置视图寻呼机。首先添加视图然后添加到其中低于/高于。这是你的错误:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<android.support.v4.view.ViewPager
android:id="@+id/mypager"
android:layout_width="fill_parent"
android:layout_height="300dp">
</android.support.v4.view.ViewPager>
<TextView
android:id="@+id/mytext"
android:text="@string/lorem__ipsum"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/mypager"/>
</RelativeLayout>
根据您需要保持其下方或上方的布局,设置布局。 希望它会对你有所帮助。