我应该使用什么样的布局来实现理想的外观?

时间:2015-06-10 21:26:10

标签: android android-layout

我希望搜索视图保持不变,当用户点击它时会展开。我还想要一个向右浮动的图标。
如果我使用相对布局,它将正常工作,直到搜索视图扩展。
relative layout relative layout 如果我使用衬垫布局并给予它们重量,则图标将始终位于搜索视图的旁边。

linear layout linera layout我该怎么办?

  <LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="horizontal">
<SearchView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:id="@+id/searchView"
    android:layout_weight="8"
    ></SearchView>
    <ImageView
        android:layout_width="32dp"
        android:layout_height="32dp"
        android:layout_weight="2"
        android:src="@drawable/setting"/>

</LinearLayout>

< RelativeLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="horizontal">

<SearchView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:id="@+id/searchView"
    android:layout_alignParentLeft="true"
    ></SearchView>
    <ImageView
        android:layout_width="32dp"
        android:layout_height="32dp"
        android:layout_gravity="center"
        android:layout_alignParentRight="true"
        android:src="@drawable/setting"/>

</RelativeLayout>

1 个答案:

答案 0 :(得分:2)

如果使用相对布局,您只需告诉搜索视图保持图标的左侧,并在父级中将设置图标对齐。这是一个有效的例子:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
                xmlns:tools="http://schemas.android.com/tools"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:paddingLeft="@dimen/activity_horizontal_margin"
                android:paddingRight="@dimen/activity_horizontal_margin"
                android:paddingTop="@dimen/activity_vertical_margin"
                android:paddingBottom="@dimen/activity_vertical_margin"
                tools:context="com.example.myapplication.EllipsizeActivity">

    <ImageView
            android:id="@+id/iv_icon"
            android:layout_alignParentRight="true"
            android:src="@android:drawable/ic_btn_speak_now"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"/>
    <SearchView
            android:id="@+id/search_view"
            android:layout_toLeftOf="@id/iv_icon"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"/>

</RelativeLayout>

以下是崩溃的内容:

collapsed

并扩展:

expanded