我是Android的第一次开发人员,所以你可以说我在学习的过程中一直在学习。对于我的大部分代码都与XML布局没有关系,我修补了我的菜鸟错误没有问题。话虽如此,当我最初使用GUI界面设计师(我的主要菜鸟错误)设计它们时,我的新手错误引起了我的关注TextViews
。
我的display_city
电视和display_today_date
电视似乎彼此之间存在共生关系。删除任何一个都会使应用程序崩溃。他们似乎非常依赖彼此,改变彼此的定位是不可能的(至少从我尝试过的无数事情中,例如设置布局边距)。
<TextView
android:id="@+id/display_city"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="20dip"
android:layout_above="@+id/display_today_date"
android:layout_below="@+id/get_data"
android:layout_centerHorizontal="true"
android:gravity="center_horizontal" />
<TextView
android:id="@+id/display_today_date"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_below="@+id/display_pollen_type"/>
我的问题是 - 如何在display_today_date
之后立即定位display_city
?当我第一次启动这个Android应用程序时,我非常依赖GUI构建器。这是我的第一个菜鸟错误,这导致了我解释的这种共生关系。
目前这是我的应用程序的样子:
我尝试将display_today_date
的布局更改为android:layout_below="@+id/display_city
。这会导致崩溃。我检查了logcat,但它没有向我提供有关XML文件中崩溃原因的相关信息。
P.S。 get_data
是TextEdit
框。
答案 0 :(得分:0)
你已经在城市上面显示了行的日期:android:layout_above =&#34; @ + id / display_today_date&#34;。您不能在相对布局中有2个视图,每个视图都引用另一个,或者它无法确定要做什么。如果您不想将城市置于日期之上,请删除该行,然后添加代码以将其放置在您想要的位置。
答案 1 :(得分:0)
您可以使用LinearLayout,其方向设置为水平。这样就没有提到另一种观点了。因此,如果您删除其中一个,则不会导致该应用崩溃。