我需要在一个布局中保存我的每个视图,以便我可以一次性移动它们...但是当我试图将它们全部放在应该在另一个主要布局中的布局中时,它们是无法看到的。我做错了什么?
我发现无法看到名为leftLayout的布局。我制作了不同颜色的布局,它向我展示了主要的布局,称为菜单。我尝试了可见性,但它也不起作用。
我的设计页面是这样的:
应该看起来像这样,但是当我编译时我只看到白色窗口......
这是我的Xml代码:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/menu"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#FFFFFF"
android:orientation="vertical" >
<RelativeLayout
android:id="@+id/leftLayout"
android:addStatesFromChildren="true"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_marginLeft="70dp"
android:orientation="vertical" >
<TextView
android:id="@+id/leftMenu"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:enabled="true"
android:text="Left Menu"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="#000000" />
<ListView
android:id="@+id/list"
android:layout_height="match_parent"
android:layout_width="match_parent"
android:layout_marginTop="70dp"
android:enabled="true" >
</ListView>
</RelativeLayout>
</RelativeLayout>
解决了! 我发现我只是在java代码中犯了错误,同时设置了保证金。所以这里的代码没问题。
答案 0 :(得分:0)
您正在使用相对布局,但尚未指定子视图相对于彼此的位置。
在相对布局中,您必须指定此内容,请在此处查看:http://developer.android.com/resources/tutorials/views/hello-relativelayout.html
答案 1 :(得分:0)
在相对布局中,您始终需要指定每个孩子相对于父母或孩子之间的位置。由于您已指定布局,因此所有布局将被复制到另一个布局。您可以使用子项对齐选项,如“ABOVE”,“BELOW”w.r.t到其他布局。 以下代码看起来像你想要的,
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/menu"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#FFFFFF"
android:orientation="vertical" >
<RelativeLayout
android:id="@+id/leftLayout"
android:addStatesFromChildren="true"
android:layout_width="100dp"
android:layout_height="fill_parent"
android:orientation="vertical"
android:layout_alignleft="@+id/menu" >
<TextView
android:id="@+id/leftMenu"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:enabled="true"
android:text="Left Menu"
android:layout_weight="0"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="#000000" />
<ListView
android:id="@+id/list"
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:enabled="true"
android:layout_marginTop="50dp"
android:layout_weight="1"
android:layout_below="@+id/leftMenu" >
</ListView>
</RelativeLayout>
</RelativeLayout>
答案 2 :(得分:0)
您是否尝试使用LinearLayouts?
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/menu"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FFFFFF">
<LinearLayout
android:id="@+id/leftLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginLeft="70dp"
android:orientation="vertical" >
<TextView
android:id="@+id/leftMenu"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:enabled="true"
android:text="Left Menu"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="#000000" />
<ListView
android:id="@+id/list"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="70dp"
android:enabled="true" >
</ListView>
</LinearLayout>
</LinearLayout>