android中EditText内的可点击按钮(或任何视图)

Posted

技术标签:

【中文标题】android中EditText内的可点击按钮(或任何视图)【英文标题】:Clickable Button (or any View) inside EditText in android 【发布时间】:2012-06-05 10:42:20 【问题描述】:

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

在我的情况下,按钮将位于任何位置,也可以位于中心。但主要是如何在 EditText 中放置一个按钮?

【问题讨论】:

你可以发portion clickable 【参考方案1】:

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

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

【讨论】:

【参考方案2】:

使用这个,它对我有用 -

 <RelativeLayout android:layout_
     android:layout_>

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

        <ImageButton android:id="@+id/id_search_button"
            android:layout_
            android:layout_
            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>

【讨论】:

【参考方案3】:

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

handling-click-events-on-a-drawable-within-an-edittext

【讨论】:

【参考方案4】:

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

【讨论】:

【参考方案5】:

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

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

【讨论】:

【参考方案6】:

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

<LinearLayout
    android:layout_
    android:layout_
    android:orientation="vertical">

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

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

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

    </RelativeLayout>

</LinearLayout>

【讨论】:

以上是关于android中EditText内的可点击按钮(或任何视图)的主要内容,如果未能解决你的问题,请参考以下文章

android开发,在EditText中输入了数据,要求在点击屏幕其它地方后,键盘自动隐藏!请代码

EditText上的Android键盘下一个按钮问题

Android Edittext Drawable 点击卡住焦点

android 通过监听edittext实现button的点击事件

画布视图框窗口内的可点击对象或形状

Android- 使用 EditText 帮助修复自定义警报对话框