10

我想在我的 EditText 中有一个按钮或一个可点击的视图,以便我可以在点击它时执行一些操作。感谢Marcosbeirigo回答,我能够在我的 EditText 中放置一个可绘制对象。但是,现在我想让它可以点击,以便我可以对其执行一些操作。我知道这是可能的,因为 HTC 在他们的股票短信应用程序中使用 EditText 内的按钮,如下图所示 -

EditText 中的发送按钮

就我而言,按钮将位于任何位置,也可以位于中心。但主要是如何在 EditText 中放置一个按钮?

4

6 回答 6

11

使用相对布局。Send 和 Attach 按钮是简单的 Android 按钮,而 32/160 是一个 TextView。将按钮和文本视图放在 EditText 对象上,使用布局安排并为 EditText 对象设置一些正确的填充,以便其中的文本不会在按钮下方。

您不需要任何可绘制对象,并且收听 android 按钮的单击事件不再是问题。它绝对正确

于 2012-05-31T07:30:57.630 回答
7

使用这个,它对我有用 -

 <RelativeLayout android:layout_width="match_parent"
     android:layout_height="wrap_content">

            <EditText android:id="@+id/id_search_EditText"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:singleLine="true"
                android:paddingRight="40dp"
                android:hint="Enter your feelings and connect" />

        <ImageButton android:id="@+id/id_search_button"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignTop="@+id/id_search_EditText"
            android:layout_alignBottom="@+id/id_search_EditText"
            android:layout_alignRight="@+id/id_search_EditText"
            android:background="@drawable/ic_launcher"/>

      </RelativeLayout>
于 2013-10-14T11:01:37.997 回答
2

我认为您尝试搜索设置单击事件以查找复合可绘制对象。你可以在这里找到一些解决方案

在编辑文本内处理可绘制的点击事件

于 2012-05-31T07:50:29.003 回答
0

editText 里面没有按钮它只是一个带有白色背景的editText,所以你看不到它的边距和简单的布局安排。

于 2012-05-31T07:28:46.017 回答
0

唯一可能的解决方案是使用相对布局,它允许您将视图也叠加到其他视图中。其他布局不允许你做这样的事情。

我还找到了这个教程: http: //developer.android.com/resources/articles/layout-tricks-merge.html也许它可以帮助你:)

于 2012-05-31T07:53:36.283 回答
0

输出

使用此代码可能会起作用。

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical">

    <RelativeLayout
        android:id="@+id/REFReLayTellFriend"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="10dp"
        android:orientation="horizontal"
        android:paddingBottom="5dp"
        android:paddingTop="5dp">

        <EditText
            android:id="@+id/txtSearch"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@drawable/editext_rounded"
            android:drawableLeft="@android:drawable/ic_menu_search"
            android:gravity="start"
            android:hint="Search"
            android:singleLine="true"/>

        <ImageButton
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignRight="@+id/txtSearch"
            android:background="@drawable/ic_action_content_filter_list"/>

    </RelativeLayout>

</LinearLayout>
于 2016-03-25T09:36:02.687 回答