Android登录界面如何实现PC版腾讯QQ的“空值判断提醒小窗”效果

来源:互联网 发布:四川广电网络在线直播 编辑:程序博客网 时间:2024/05/16 15:55

    近期在开发一个Android内部项目的时候,做到登录界面这块,需要按照惯例对用户输入的账号密码进行空值判断,如果为空,就弹出对话框或者给出一个Toast提示。然而我昨天突发奇想,能不能做一种其他形式的空值提醒,看起来具有灵动性,既不花哨也不死板、枯燥。于是我双击打开了PC版的腾讯QQ的登录界面,在不输入账号密码的情况下,直接点击登录按钮。这时,我看到了它有一种这样的效果:



    呶~如上图所示,它没有用很烦人的二级弹窗来大费周折地只为提醒用户输入值,而是以一种很清爽的小对话框挂在那儿,这个小窗在你点击了界面任何一点之后,使它失去焦点,它就会自动消失。甚至你不用管它,直接输入,只要检测到输入框内有值了,它就会乖乖消失的,感觉大简至极!

    可是大家都知道,PC开发与移动开发还是有很大区别的,单单就UI这块儿,就大相径庭,相信许多做移动开发的朋友,起初都对UI这块儿很头痛!你不仅要通过各种布局管理器和参数设置来完成一个很漂亮的UI开发工作,还要考虑各种屏幕适配的问题,总之各种恼火。比如上面的那个问题,在PC上面若要实现这个效果恐怕很简单,但是如何在Android里面也实现一种类似的效果呢?

    很多朋友首先会想到使用Toast,因为这个很像Toast的那种轻薄、低调、极简主义的风格,但是恕晚辈无能,很惭愧地说:在下并没有对Toast的原生代码进行过深究,只知道它可以被自定义添加Image,但是不知道可不可以自定义到一定的程度,从而能达到这种效果(形状、背景和事件监听),不过也许读通了源代码,这种改造估计也未尝不会成功。有兴趣的Android大虾可以试试~不过不要因为只是一个非常细微的细节就不屑一顾~有时候,好的用户体验恰恰就体现在这些细节上——它能反映出开发者的认真程度,以及这款产品带给用户的安全感。

    除了对Toast改造这个思路,还有我们经常会用到的对话框,也可以通过重写源代码,进行改造,从而努力达到这种效果。

   

    然而——我今天却想谈一下自己的想法,从而来一步一步实现这个效果。注册了CSDN这么久,从来都只是看那些大牛的Blog,自己还从未贡献过,今天作为处女Blog,就写些简单的东西吧~


    首先,先看看我Demo里面的实现效果:

   


    这是我大致做出的一个效果。下面仔细陈述它是如何实现的。



1 0
原创粉丝点击