0

Iam は 2 つのボタンで検索バーを作成しようとしています..下の画像のようにここに画像の説明を入力

これは私のレイアウトファイルです

 <LinearLayout
            android:id="@+id/searchlayout"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:background="@drawable/iconskin"
            android:gravity="right|center_vertical"
            android:orientation="horizontal"
            android:layout_weight="1"
            android:padding="2dp" 
            android:visibility="gone">



            <EditText
                android:id="@+id/searchname"
                style="@style/customsearchfont"
                android:layout_width="0dp"
                android:layout_height="fill_parent"
                android:layout_gravity="center"
                android:layout_weight="1"
                android:background="#9fc5f9"
                android:focusable="false"
                android:gravity="left|center_vertical"
                android:hint="@string/searchkeyword"
                android:inputType="textCapSentences"
                android:paddingLeft="2dp"
                android:paddingRight="2dp"
                android:singleLine="true"
                android:textColorHint="#FFFFFF" />

             <Button
                android:id="@+id/closesearch"
                android:layout_width="30dp"
                android:layout_height="30dp"
                android:layout_gravity="left"
                android:layout_marginRight="90dp"
                android:visibility="gone"
                android:background="@drawable/closesearch"/>

            <Button
                android:id="@+id/go"
                android:layout_width="40dp"
                android:layout_height="40dp"
                android:layout_gravity="center"
                android:background="@drawable/search"/>
        </LinearLayout>

問題は、三角形が中央に配置されていることです..検索名を覆っています...どうすれば画像のように正確に達成できますか..どんな助けも大歓迎です。

4

2 に答える 2

0

これに似た何かをしてください:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/layout_search"
        android:layout_width="match_parent"
        android:layout_height="50dp"
        android:background="@drawable/action_bar_background" >

<EditText
    android:id="@+id/search_bar"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:singleLine="true"
    android:inputType="text"
    android:textColorHint="#FFFFFF"
    android:hint="@string/search"
    android:gravity="bottom"
    android:layout_toLeftOf="@+id/search_btn"
    android:layout_toRightOf="@+id/cancel_search_btn" />

<ImageButton
    android:id="@+id/search_btn"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:src="@drawable/ic_action_search"
    android:layout_centerVertical="true"
    android:layout_alignParentRight="true"
    android:background="@drawable/ic_actionbar_drawable_bg"
    android:contentDescription="@string/app_name"
    android:paddingLeft="5dp"
    android:paddingRight="5dp" />

<ImageButton
    android:id="@+id/cancel_search_btn"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:layout_centerVertical="true"
    android:layout_alignParentLeft="true"
    android:contentDescription="@string/app_name"
    android:background="@drawable/ic_actionbar_drawable_bg"
    android:src="@drawable/ic_actionbar_cancel"
    android:paddingLeft="5dp"
    android:paddingRight="5dp" />


</RelativeLayout>

android から layout_search に編集テキストのような背景を設定し、編集テキストに背景 android:color/transparent を設定する必要があります。このようにして、相対的なレイアウトは editext のようになります。

于 2013-01-23T16:27:06.830 に答える
0

adnroid にはすでに searchView があります。次を参照してください: http://developer.android.com/reference/android/widget/SearchView.html

自分で再実装する必要はありません。

于 2013-01-23T15:39:16.227 に答える