Android中如何实现清空搜索框的文字_Android

需求:项目中的有关搜索的地方,加上清空文字的功能,目的是为了增加用户体验,使用户删除文本更加快捷

解决过程:开始的时候感觉这个东西不太好实现,主要就是布局的问题,可能是开始顾虑的太多了,再加上当时产品催的不太紧,而且这个功能也不是必须实现的。但是今天不一样了,这个是老大让加上的,说别的很多应用中都有这个功能,没办法那就加上呗,试着去使用了相对布局去实现,把一个删除按键放在编辑框的右上方,当文字的时候就把删除按键给显示出来,当编辑框为空的时候就把删除按键给隐藏掉。布局代码

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:orientation="vertical"
 android:paddingBottom="50dp"
 android:layout_width="fill_parent"
 android:layout_height="fill_parent">
 <RelativeLayout android:id="@+id/top"
  android:layout_width="fill_parent"
  android:layout_alignParentTop="true"
  android:paddingLeft="10dp"
  android:paddingRight="10dp"   android:background="@drawable/top_background"
  android:layout_height="wrap_content">
  <Button android:id="@+id/btnSearch"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:gravity="center"
   android:layout_centerVertical="true"
   android:layout_alignParentRight="true"
   android:textSize="12sp"
   android:textStyle="bold"   android:background="@drawable/search_btn_background"
   android:text="搜索"/>
  <RelativeLayout android:id="@+id/rlSearchFrameDelete"
   android:layout_width="fill_parent"
   android:layout_height="wrap_content"
   android:layout_centerVertical="true"
   android:gravity="center_vertical"
android:layout_toLeftOf="@id/btnSearch">
    <EditText android:id="@+id/etSearch"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:singleLine="true"
android:background="@drawable/search_frame"   android:layout_marginRight="10dp"
     android:paddingLeft="32dp"
     android:textSize="12sp"
     android:hint="请输入文字..."/>
    <ImageView android:id="@+id/ivDeleteText"     android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
     android:src="@drawable/delete"
 android:layout_centerInParent="true"
     android:paddingRight="20dp"
     android:visibility="gone"/>
  </RelativeLayout>
 </RelativeLayout>
</RelativeLayout>

这代码是直接从项目那截取过来的,里面用到了一些小技巧,开发的时候用到的布局写法,其中以一种背景平铺,这个在以前的文章里讲述过。在主程序里主要是使用了EditText监听输入的功能,这个以前的文章也写过,这次在使用又复习了一遍。代码如下

[java] view plain copy
public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);
  ivDeleteText = (ImageView) findViewById(R.id.ivDeleteText);
  etSearch = (EditText) findViewById(R.id.etSearch);
  ivDeleteText.setOnClickListener(new OnClickListener() {
   public void onClick(View v) {
    etSearch.setText("");
   }
  });
  etSearch.addTextChangedListener(new TextWatcher() {
   public void onTextChanged(CharSequence s, int start, int before, int count) {
    // TODO Auto-generated method stub
   }
   public void beforeTextChanged(CharSequence s, int start, int count,
     int after) {
    // TODO Auto-generated method stub
   }
   public void afterTextChanged(Editable s) {
    if (s.length() == 0) {
     ivDeleteText.setVisibility(View.GONE);
    } else {
     ivDeleteText.setVisibility(View.VISIBLE);
    }
   }
  });

现在就可以实现开始描述的要求了。这里面还用到了一张背景图是.9.png的,能大能小哦

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索android
搜索框
android搜索功能实现、android 搜索框实现、android 搜索记录实现、android qq搜索框实现、android实现搜索历史,以便于您获取更多的相关知识。

时间: 2024-09-27 16:48:03

Android中如何实现清空搜索框的文字_Android的相关文章

Android中如何实现清空搜索框的文字

需求:项目中的有关搜索的地方,加上清空文字的功能,目的是为了增加用户体验,使用户删除文本更加快捷 解决过程:开始的时候感觉这个东西不太好实现,主要就是布局的问题,可能是开始顾虑的太多了,再加上当时产品催的不太紧,而且这个功能也不是必须实现的.但是今天不一样了,这个是老大让加上的,说别的很多应用中都有这个功能,没办法那就加上呗,试着去使用了相对布局去实现,把一个删除按键放在编辑框的右上方,当文字的时候就把删除按键给显示出来,当编辑框为空的时候就把删除按键给隐藏掉.布局代码 <?xml versio

浅析Android中常见三种弹框在项目中的应用

一丶概述 弹框在Android项目中经常出现,常见的实现方法有三种:Dialog 弹框,Window弹框,Activity伪弹框.本文就说一说三种弹框的实现及在项目中的运用. 二丶演示图 图一为常见的三种弹框(文末上链接),图二为项目中用到的Activity伪弹框 三丶正文 1.Dialog弹框 先看一篇一篇文章: android 8种对话框(Dialog)使用方法汇总 Dialog是系统自带的弹框,然而常常因为UI不好看而遭嫌弃,常需要自定义 public class MyDialog ext

Android搜索框通用版_Android

之前项目总会遇到很多搜索框类的功能,虽然不是很复杂,不过每次都要去自己处理数据,并且去处理搜索框的变化,写起来也比较麻烦,今天来做一个比较简单的通用搜索栏. 先看下效果图: 没什么特别的,只是今天要做的就是简单的把搜索框的内容封装一下. 一.分析功能 先考虑一下,搜索框一般都是由一个搜索图标(一般都是一个放大镜),一个输入框和一个清除按钮组成.然后会通过监听输入框的变化去处理清除按钮的显示和隐藏并且去过滤相关的数据.最后去刷新适配器,显示过滤后的数据.基本上搜索框的功能都大同小异. 有了上边的分

Android 系统有浏览记录搜索框

 一.配置搜索描述文件 要在res中的xml文件加创建sreachable.xml,内容如下: <?xml version="1.0" encoding="utf-8"?>  <searchable  xmlns:android="http://schemas.android.com/apk/res/android"  android:hint="@string/searchLable"  android:l

Android实现简单实用的搜索框

本文实例为大家分享了Android实现搜索框展示的具体代码,供大家参考,具体内容如下 展示效果 代码区 SouActivity public class SouActivity extends AppCompatActivity implements TextWatcher{ @BindView(R.id.app_sou) EditText appSou; @BindView(R.id.app_sou_list) ListView appSouList; @BindView(R.id.activ

Android中.9.png图片的使用及制作_Android

我们有一个TextView,其里面的内容是可以通过代码动态改变的,我们想用一张图片作为TextView的背景,实现类似于手机QQ对话中的气泡文本效果. TextView定义如下: <TextView android:text="@string/hello_world" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravit

Android实现可浏览和搜索的联系人列表_Android

通过这篇文章,我想说明一下如何创建一个可搜索的"联系人列表"Android应用程序.使用这个应用程序,用户可以通过使用导航按钮浏览所有保存的联系人和根据联系人名称搜索联系人.该应用程序还可以显示联系人的照片(如果可用). 要浏览联系人列表可以使用<<,<,>和>>按钮. 要搜索联系人的用户在"搜索名称"文本框中键入联系人名称,然后单击"搜索"按钮.点击"清除搜索"按钮,清除"搜索名

Android开发笔记之Android中数据的存储方式(一)_Android

对于开发平台来讲,如果对数据的存储有良好的支持,那么对应用程序的开发将会有很大的促进作用. 总体的来讲,数据存储方式有三种:一个是文件,一个是数据库,另一个则是网络.其中文件和数据库可能用的稍多一些,文件用起来较为方便,程序可以自己定义格式:数据库用起稍烦锁一些,但它有它的优点,比如在海量数据时性能优越,有查询功能,可以加密,可以加锁,可以跨应用,跨平台等等:网络,则用于比较重要的事情,比如科研,勘探,航空等实时采集到的数据需要马上通过网络传输到数据处理中心进行存储并进行处理,有实时性的需求等.

Android 中 退出多个activity的经典方法_Android

1.使用List集合方式 用list保存activity实例,然后逐一干掉 import java.util.LinkedList; import java.util.List; import android.app.Activity; import android.app.AlertDialog; import android.app.Application; import android.content.DialogInterface; import android.content.Inte