博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android搜索框效果
阅读量:6282 次
发布时间:2019-06-22

本文共 1889 字,大约阅读时间需要 6 分钟。

转载:http://blog.csdn.net/walker02/article/details/7917392

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

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

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

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的,能大能小哦 

Demo代码:http://pan.baidu.com/s/1pJOiXab

你可能感兴趣的文章
“我意识到”的意义
查看>>
淘宝天猫上新辅助工具-新品填表
查看>>
再学 GDI+[43]: 文本输出 - 获取已安装的字体列表
查看>>
nginx反向代理
查看>>
操作系统真实的虚拟内存是什么样的(一)
查看>>
hadoop、hbase、zookeeper集群搭建
查看>>
python中一切皆对象------类的基础(五)
查看>>
modprobe
查看>>
android中用ExpandableListView实现三级扩展列表
查看>>
%Error opening tftp://255.255.255.255/cisconet.cfg
查看>>
java读取excel、txt 文件内容,传到、显示到另一个页面的文本框里面。
查看>>
《从零开始学Swift》学习笔记(Day 51)——扩展构造函数
查看>>
python多线程队列安全
查看>>
[汇编语言学习笔记][第四章第一个程序的编写]
查看>>
android 打开各种文件(setDataAndType)转:
查看>>
补交:最最原始的第一次作业(当时没有选上课,所以不知道)
查看>>
Vue实例初始化的选项配置对象详解
查看>>
PLM产品技术的发展趋势 来源:e-works 作者:清软英泰 党伟升 罗先海 耿坤瑛
查看>>
vue part3.3 小案例ajax (axios) 及页面异步显示
查看>>
浅谈MVC3自定义分页
查看>>