Android
文章平均质量分 73
留下了没技术的泪水~~
学无止境
展开
-
Android开发之文件命名规范
以前自己学习Android做项目的时候都是自己一个人在单搞,所以对命名这一块没有形成什么良好的习惯,只要自己能懂就可以了。但是现在经公司实习才知道这样完全不行的,公司的项目基本都是团队合作,所以你要能看懂别人的代码,也要让别人能看懂你的代码。当我打开那些资源表的时候完全傻了,实在是太多了,完全不知道哪个是哪个。再就是我自己写的界面差不多有十几个图标,我也不知道改怎么命名别人才能懂。没办法,只能硬着原创 2015-07-27 09:51:41 · 502 阅读 · 0 评论 -
Android开发之设置60s倒计时
同样是最近做项目碰到的一点小知识,拿出来和大家分享一下。要实现的功能是点击发送按钮后手机会接收到验证码,但是有的时候由于短信网关故障等原因可能不能及时收到短息,所以设置一种倒计时机制,当倒计时时间结束后如果还没有收到验证码短信则可以选择重新发送验证码。首先说一下我们今天用的到CountDownTimer这个抽象类,实现了倒计时的功能。将后台线程的创建和Handler队列封装成一个方便的类调用。原创 2015-07-30 09:54:05 · 4236 阅读 · 1 评论 -
Android开发工具Eclipse自己常用的几个快捷键
这篇博客纯粹是为了方便我自己,所以没有把所有的快捷键列出来,只是把自己经常用到的几个快捷键列出来了。Ctrl + Shift + W 关闭所有已打开的编辑窗口Alt + Shift + R 文件或变量重命名(先选中文件或变量再同时按下快捷键)Ctrl + Shift + O 自动导入需要的包并删除多余的import语句,使用频率非常高。Ct原创 2015-07-21 14:25:52 · 437 阅读 · 2 评论 -
Android开发之两种方式实现连续点击两次返回键退出程序
经常看到很多程序点击一下返回键会显示再按一次退出程,然后连续点击两次返回键就退出程序了。虽然心里对这种功能实现方式有了一种大概想法,但是一直也没有去总结过。现在觉得如果项目中加上这个小功能还是很方便的,所以总结了一下实现方式,下面和大家分享两种方式。第一种:首先定义一个boolean型变量用于标示是否退出boolean isExit; 然后重写Activity中的onKeyDow原创 2015-07-30 22:24:48 · 4449 阅读 · 2 评论 -
Android开发实现连续跳转几个界面后在最后一个界面完美跳回最初的界面
在实际的项目开发中也许会碰到一种情况,需要从A界面跳转到B界面,再从B界面跳转到C界面,再从C界面跳转到D界面,最后需要从D界面跳回到A界面,并且把B、C 、D界面都干掉。也许立马会有人觉得可以在B、C、D界面跳转时就finish()掉当前界面就可以了。但是如果需要在B、C、D界面之间可以正常的返回上一界面,那么在跳转的时候finish()掉当前界面就不合理了。其实Android已经为我们提供了一原创 2015-08-13 19:10:39 · 12998 阅读 · 4 评论 -
Android实现图标右上角红色小圆球提示气泡
今天跟大家分享一个我最近在开发应用中用的到实现图标右上角红色小圆球提示气泡。相信大家都熟悉,在Android开发微信、QQ、短消息、应用商店等应用时,会考虑在图标右上角红色小圆球提示气泡再加上未读信息的数量,在应用商店上加上可以升级的应用数量,这样不占太大空间还能达到提示的目的。实现该功能可以重写View的onDraw完成该功能,也可以写布局文件完成该功能。现在使用布局文件完成。暂时先原创 2015-07-21 12:44:25 · 10987 阅读 · 1 评论 -
Android开发之定义内部类简单实现60s倒计时
前面我写过一篇关于倒计时的博客,主要是使用了一个Service来完成倒计时,这样就算页面跳转了也不会停止倒计时。但是有人给我发私信说他也需要用单倒计时,但是不用在Service中去完成,那样太麻烦了。所以这里我就再分享一种直接定义内部类TimeCount实现的方法。由于比较简单,所以我就不再贴出所有的代码,只分享一下这个内部类。java代码如下:class TimeCountFirst ext原创 2015-08-03 12:50:19 · 1347 阅读 · 0 评论 -
Android数据库安全解决方案,使用SQLCipher进行加解密
我们都知道,Android系统内置了SQLite数据库,并且提供了一整套的API用于对数据库进行增删改查操作。数据库存储是我们经常会使用到的一种存储方式,相信大多数朋友对它的使用方法都已经比较熟悉了吧。在Android中,我们既可以使用原生的SQL语句来对数据进行操作,也可以使用Android API提供的CRUD方法来对数据库进行操作,两种方式各有特点,选择使用哪一种就全凭个人喜好了。转载 2015-08-14 11:50:18 · 406 阅读 · 0 评论 -
Android开发之Service完全解析,关于服务你所需知道的一切
相信大多数朋友对Service这个名词都不会陌生,没错,一个老练的Android程序员如果连Service都没听说过的话,那确实也太逊了。Service作为Android四大组件之一,在每一个应用程序中都扮演着非常重要的角色。它主要用于在后台处理一些耗时的逻辑,或者去执行某些需要长期运行的任务。必要的时候我们甚至可以在程序退出的情况下,让Service在后台继续保持运行状态。不过,虽然转载 2015-07-23 10:51:40 · 491 阅读 · 0 评论 -
Android开发设置软键盘收索键
有时候为了布局美观,不会特意的去放置一个收索按钮,而是调用软件盘上的回车按钮作为收索。要实现把软键盘的回车按钮设置为收索按钮其实很简单,直接在Layout文件中,对EditText控件加上如下属性:android:imeOptions="actionSearch"这个属性的值还可以为其他的,例如:actionSearch: 搜索actionSend: 发送acti原创 2015-08-18 13:43:00 · 629 阅读 · 0 评论 -
在Activity中响应ListView内部按钮的点击事件的两种方法
最近交流群里面有人问到一个问题:如何在Activity中响应ListView内部按钮的点击事件,不要在Adapter中响应?对于这个问题,我最初给他的解答是,在Adapter中定义一个回调接口,在Activity中实现该接口,从而实现对点击事件的响应。下班后思考了一下,觉得有两种方式都能比较好的实现:使用接口回调和使用抽象类回调。正好可以复习一下接口和抽象类的区别,于是写了转载 2015-12-31 09:20:52 · 1028 阅读 · 0 评论 -
为ListView每个Item上面的按钮添加事件在Adapter中响应
1.使用final变量扩展局部变量的生命周期范围主要代码//注意原本getView方法中的int position变量是非final的,现在改为final @Override public View getView(final int position, View convertView, ViewGroup parent) { ViewHolder holder = null转载 2015-12-31 09:24:36 · 4576 阅读 · 0 评论 -
Android开发之TabHost应用详解
TabHost的实现有两种方式: 第一种继承TabActivity,从TabActivity中用getTabHost()方法获取TabHost。各个Tab中的内容在布局文件中定义就行了。 第二种方式,不继承TabActivity,在布局文件中定义TabHost即可,但是TabWidget的id必须是@android:id/tabs,FrameLayout的id必原创 2015-12-07 17:05:35 · 508 阅读 · 0 评论 -
自定义圆形图片显示控件CircleImageView
项目中我们经常会碰到需要使用圆形图片的地方,以前我都是直接在代码里面画。这次碰到一个项目需要使用的地方太多了,所以就自己在网上查了一下资料,集合了一些大神写的方法,然后搞了一套非常简单圆形图片显示控件CircleImageVIew。不多说,先贴出这个类的代码CircleImageView.javapackage cn.nodemedia.cc.chenzhou.three.ui.view;原创 2016-03-31 09:59:53 · 863 阅读 · 0 评论 -
Android开发之Volley定制自己的Request
经过前面两篇文章的学习,我们已经掌握了Volley各种Request的使用方法,包括StringRequest、JsonRequest、ImageRequest等。其中StringRequest用于请求一条普通的文本数据,JsonRequest(JsonObjectRequest、JsonArrayRequest)用于请求一条JSON格式的数据,ImageRequest则是用于请求网络上的一张图片转载 2015-08-24 09:09:14 · 402 阅读 · 0 评论 -
推荐一本Android开发入门书籍
今天跟大家推荐一本书籍《第一行代码—Android》,是郭大神的书籍,相信大家对郭大神一定不陌生吧。前段时间看到很多朋友在求这本书的电子版,所以我自己花钱去把电子版买回来了,今天就和大家分享一下这个资源,首先跟大家介绍一下这本书。CSDN超人气博主、CSDN 2013年度十大博客之星、资深Android开发者郭霖力作!第一本引入经验值、升级与宝物系统的计算机书!见证自己从菜鸟到鹰的成长!全球最原创 2015-07-20 09:57:24 · 1123 阅读 · 8 评论 -
Android基础和进阶知识总结
基础总结篇之一:Activity生命周期基础总结篇之二:Activity的四种launchMode基础总结篇之三:Activity的task相关基础总结篇之四:Service完全解析基础总结篇之五:BroadcastReceiver应用详解基础总结篇之六:ContentProvider之读写联系人基础总结篇之七:ContentPr转载 2015-06-25 16:19:18 · 439 阅读 · 0 评论 -
Android开发获取本地图片的一种方法
前几天做一个小玩意的时候需要从本地获取图片,在网上查了半天发小好多种方法,现在就和大家分享一种我觉得很简单的方法。为了更好的理解,我自己建了一个工程来展示这个功能,效果图如下:点击确认后就可以将自己剪切的好的图片显示在ImageView中,效果图如下:好了,不多说了,开始上代码,首先是布局文件代码<LinearLayout xmlns:android="http:/原创 2015-07-13 14:20:00 · 2450 阅读 · 0 评论 -
Android实现本地密码验证登陆
转载请注明出处:http://blog.csdn.net/u011895534/article/details/46862791本人向来都不怎么清楚自己的钱怎么用的,为此时常苦恼。刚好最近在学习Android开发,所以为自己量身定做了一款理财APP,用起来还是不错的。可是问题来了,前天手机借给比人玩的时候,点进那个理财APP,我的消费信息什么一下子全部泄漏。虽然不是什么很私密的信息,但是还原创 2015-07-13 15:07:27 · 7952 阅读 · 0 评论 -
Android开发之一分钟教你使用双向滑动菜单
记得在很早之前,我写了一篇关于Android滑动菜单的文章,其中有一个朋友在评论中留言,希望我可以帮他将这个滑动菜单改成双向滑动的方式。当时也没想花太多时间,简单修改了一下就发给了他,结果没想到后来却有一大批的朋友都来问我要这份双向滑动菜单的代码。由于这份代码写得很不用心,我发了部分朋友之后实在不忍心继续发下去了,于是决定专门写一篇文章来介绍更好的Android双向滑动菜单的实现方法。在开转载 2015-07-13 22:55:41 · 530 阅读 · 0 评论 -
Android开发之颜色对照表
颜色代码大全 AA 指定透明度。 00 是完全透明。 FF 是完全不透明。超出取值范围的值将被恢复为默认值。 ffff00ffff33ffff66ffff99ffffccffffffffcc00ffcc33ffcc66ffcc99转载 2015-07-14 09:13:48 · 538 阅读 · 0 评论 -
Android中的线程与进程之间的关系简单解释
一、Android中的进程当一个程序第一次启动的时候,Android会启动一个LINUX进程和一个主线程。默认的情况下,所有该程序的组件都将在该进程和线程中运行。 同时,Android会为每个应用程序分配一个单独的LINUX用户。Android会尽量保留一个正在运行进程,只在内存资源出现不足时,Android会尝试停止一些进程从而释放足够的资源给其他新的进程使用, 也能保证用户正在访问的当原创 2015-07-14 09:49:47 · 2736 阅读 · 0 评论 -
Android开发之资源文件存储
本文介绍在Android开发中关于资源文件的存储操作。对于Android资源也是非常重要的,主要包括文本字符串(strings)、颜色(colors)、数组(arrays)、动画(anim)、布局(layout)、图像和图标(drawable)、音频视频(media)和其他应用程序使用的组件。 在Android开发中,资源文件是我们使用频率最高的,无论是string,drawa转载 2015-07-14 13:36:41 · 403 阅读 · 0 评论 -
Android开发之监听手机来电
TelephonyManager是一个管理手机通话状态、电话网络信息的服务类,该类提供了大量的getXxx(),方法获取电话网络的相关信息。关于TelephonyManager的详解可以参照:Android开发之获取手机SIM卡信息程序运行结果:log_phone文件:应用实例:[java] view plaincopy转载 2015-07-13 22:59:02 · 874 阅读 · 0 评论 -
Android开发数据库之LitePal用法
前几天看了郭神的Android开发数据库高手秘籍,完全被震撼到了,所以现在把郭神的数据库高手秘籍里面的关于LitePal全部截取出来,方便自己以后查看。一、LitePal的基本用法虽说LitePal宣称是近乎零配置,但也只是“近乎”而已,它还是需要进行一些简单配置才可以使用的,那么我们第一步就先快速学习一下LitePal的配置方法。快速配置1. 引入Jar包或源码原创 2015-07-15 15:54:27 · 1768 阅读 · 0 评论 -
Android开发如何验证输入的手机号码是否合格
这几天正在参与一个关于移动公司的项目开发,其中就有输入手机号码获取验证码的功能。如果说把验证手机号码的正确性的功能放到后台去验证感觉有点坑后台的那群娃,所以还不如我们在APP中直接验证。第一步:先来总结一下我们日常生活中的手机号码共同的特性移动的号码前三位:134、135、136、137、138、139、150、151、157(TD)、158、159、187、188联通的号码前三位:1原创 2015-07-28 15:19:17 · 3366 阅读 · 1 评论 -
Android开发使用Volley加载网络图片
在上篇文章中有提到过,Volley是将AsyncHttpClient和Universal-Image-Loader的优点集成于一身的一个框架。我们都知道,Universal-Image-Loader具备非常强大的加载网络图片的功能,而使用Volley,我们也可以实现基本类似的效果,并且在性能上也豪不逊色于Universal-Image-Loader,下面我们就来具体学习一下吧。1. Ima转载 2015-08-24 09:07:03 · 549 阅读 · 0 评论 -
从源码解析使用LitePal建表过程
在SQLiteOpenHelper类里getWritableDatabase()和getReadableDatabase()方法的内部实现都是调用了getDatabaseLocked()方法,该方法是处理数据库创建,表创建的核心方法。他定义了一系列逻辑骨架,但并不是具体的实现者。下面来看看该方法在创建完数据库后是怎样处理表的创建: view sourceprint?原创 2015-07-16 10:30:29 · 1294 阅读 · 0 评论 -
Android开发初识Volley的基本用法
1. Volley简介我们平时在开发Android应用的时候不可避免地都需要用到网络技术,而多数情况下应用程序都会使用HTTP协议来发送和接收网络数据。Android系统中主要提供了两种方式来进行HTTP通信,HttpURLConnection和HttpClient,几乎在任何项目的代码中我们都能看到这两个类的身影,使用率非常高。不过HttpURLConnection和HttpCl转载 2015-08-24 09:05:10 · 415 阅读 · 0 评论 -
Android开发从源码的角度理解Volley
经过前三篇文章的学习,Volley的用法我们已经掌握的差不多了,但是对于Volley的工作原理,恐怕有很多朋友还不是很清楚。因此,本篇文章中我们就来一起阅读一下Volley的源码,将它的工作流程整体地梳理一遍。同时,这也是Volley系列的最后一篇文章了。其实,Volley的官方文档中本身就附有了一张Volley的工作流程图,如下图所示。多数朋友突然看到一张这样的图,应转载 2015-08-24 09:12:29 · 419 阅读 · 0 评论 -
Android 开发判断用户是否安装微信和QQ并跳转过去
/** * 判断 用户是否安装微信客户端 */ public static boolean isWeixinAvilible(Context context) { final PackageManager packageManager = context.getPackageManager();// 获取packagemanager L原创 2016-05-12 10:03:33 · 8202 阅读 · 5 评论