尝试创建类似于Android Facebook应用的布局(带有应用名称的顶部栏和右边对齐的2个按钮)。
尝试了一切:(我最接近的一个按钮消失了......
以下是代码:(使用顶部的亲戚创建粘性页眉和页脚)
“搜索”按钮与右侧对齐时,“添加”按钮消失。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:orientation="vertical">
<RelativeLayout android:layout_width="fill_parent"
android:layout_height="50dip" android:id="@+id/top_control_bar">
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent"
android:layout_height="fill_parent" android:src="@drawable/top_background">
<TextView android:layout_width="wrap_content" android:layout_height="20dip"
android:text="APP" android:layout_gravity="left|center" android:layout_alignParentLeft="true" android:layout_toLeftOf="@+id/add_bookmark" />
<Button android:id="@+id/add_bookmark" android:layout_width="wrap_content"
android:layout_height="fill_parent" android:text="Add" android:layout_gravity="right|center" android:layout_alignParentRight="true" />
<Button android:id="@+id/search_bookmark" android:layout_width="wrap_content"
android:layout_height="fill_parent" android:text="Search" android:layout_gravity="right|center" android:layout_alignParentRight="true" />
</RelativeLayout>
</RelativeLayout>
<LinearLayout android:id="@+id/bottom_control_bar"
android:layout_width="fill_parent" android:layout_height="wrap_content"
android:layout_alignParentBottom="true">
<Button android:layout_width="wrap_content"
android:layout_height="fill_parent" android:text="Backup" />
<Button android:layout_width="wrap_content"
android:layout_height="fill_parent" android:text="Restore" />
</LinearLayout>
<ListView android:id="@android:id/list" android:layout_width="fill_parent"
android:layout_height="0dip" android:layout_below="@id/top_control_bar"
android:layout_above="@id/bottom_control_bar"></ListView>
<TextView android:id="@android:id/empty" android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="No Bookmarks found. You can add one by clicking the star."
android:layout_below="@id/top_control_bar" android:layout_above="@id/bottom_control_bar" />
</RelativeLayout>
非常感谢任何帮助! :)
答案 0 :(得分:0)
按钮在那里,但在搜索按钮后面。如果您切换添加和搜索按钮的顺序,您将看到两个按钮都在那里。两者共享相同的右边界坐标。像使用“app”TextView一样使用layout_toLeftOf
或layout_toRightOf
。
您可以使用以下代码替换内部RelativeLayout
。
<RelativeLayout android:layout_width="fill_parent" android:layout_height="fill_parent">
<TextView android:layout_width="wrap_content" android:layout_height="20dip"
android:text="APP" android:layout_gravity="left|center" android:layout_alignParentLeft="true" android:layout_toLeftOf="@id/add_bookmark" />
<Button android:id="@+id/search_bookmark" android:layout_width="wrap_content"
android:layout_height="fill_parent" android:text="Search" android:layout_gravity="right|center" android:layout_alignParentRight="true" />
<Button android:id="@+id/add_bookmark" android:layout_width="wrap_content"
android:layout_height="fill_parent" android:text="Add" android:layout_gravity="right|center" android:layout_toLeftOf="@id/search_bookmark" />
</RelativeLayout>
答案 1 :(得分:0)
好吧它没有消失,它在你的搜索按钮下。这是因为两个按钮都是alignParentRight = true。
将搜索设置为parentRight,将搜索设置为添加到左侧。这应该可以解决问题。
此外:您有太多嵌套布局。您可以轻松减少以提高效率。记住在android中创建/膨胀视图非常昂贵(记忆和时间)。