- 博客(59)
- 资源 (9)
- 收藏
- 关注
原创 Android 开发判断用户是否安装微信和QQ并跳转过去
/** * 判断 用户是否安装微信客户端 */ public static boolean isWeixinAvilible(Context context) { final PackageManager packageManager = context.getPackageManager();// 获取packagemanager L
2016-05-12 10:03:33
8201
5
原创 自定义圆形图片显示控件CircleImageView
项目中我们经常会碰到需要使用圆形图片的地方,以前我都是直接在代码里面画。这次碰到一个项目需要使用的地方太多了,所以就自己在网上查了一下资料,集合了一些大神写的方法,然后搞了一套非常简单圆形图片显示控件CircleImageVIew。不多说,先贴出这个类的代码CircleImageView.javapackage cn.nodemedia.cc.chenzhou.three.ui.view;
2016-03-31 09:59:53
863
转载 为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
4574
转载 在Activity中响应ListView内部按钮的点击事件的两种方法
最近交流群里面有人问到一个问题:如何在Activity中响应ListView内部按钮的点击事件,不要在Adapter中响应?对于这个问题,我最初给他的解答是,在Adapter中定义一个回调接口,在Activity中实现该接口,从而实现对点击事件的响应。下班后思考了一下,觉得有两种方式都能比较好的实现:使用接口回调和使用抽象类回调。正好可以复习一下接口和抽象类的区别,于是写了
2015-12-31 09:20:52
1028
原创 Android开发之TabHost应用详解
TabHost的实现有两种方式: 第一种继承TabActivity,从TabActivity中用getTabHost()方法获取TabHost。各个Tab中的内容在布局文件中定义就行了。 第二种方式,不继承TabActivity,在布局文件中定义TabHost即可,但是TabWidget的id必须是@android:id/tabs,FrameLayout的id必
2015-12-07 17:05:35
508
转载 IOS控件UITableView详解
终于写到了UITableView,用处最广的一个控件,当然也是要记相当多东西的一个控件。首选创建一个新的项目,并添加一个MainViewController的Class文件打开MainViewController.h文件[cpp] view plaincopy@interface MainViewControlle
2015-12-03 16:52:33
362
转载 iOS开发之键盘类型UIKeyboardType
UIKeyboardTypeDefault:UIKeyboardTypeASCIICapable:UIKeyboardTypeNumbersAndPunctuation:UIKeyboardTypeURL:UIKeyboardTypeNumberPad:
2015-12-03 15:56:50
362
转载 NSString属性声明中的copy和retain区别
NSString是一个不可变的字符串对象。这不是表示这个对象声明的变量的值不可变,而是表示它初始化以后,你不能改变该变量所分配的内存中的值,但你可以重新分配该变量所处的内存空间。 生成一个NSString类型的字符串有三种方法:方法1.直接赋值: NSString *str1 = @"my string"; 方法2.类函数初始化生成: NS
2015-12-03 15:04:32
358
转载 ios开发学习笔记
1,Search Bar 怎样去掉背景的颜色(storyboard里只能设置background颜色,可是发现clear Color无法使用)其实在代码里还是可以设置的,那就是删除背景view[[self.searchBar.subviews objectAtIndex:0] removeFromSuperview];2,NSDate使用
2015-11-27 15:19:41
500
原创 UItableView系列——最重要的部分UItableViewCell
1.自带的UITableViewCellUITableViewCell是构建一个UITableView的基础,在UITableViewCell内部有一个UIView控件作为其他内容的容器,它上面有一个UIImageView和两个UILabel,通过UITableViewCellStyle属性可以对其样式进行控制。其结构如下:有时候我们会发现很多UITableViewCell
2015-11-19 15:08:08
588
原创 UItableView系列——性能优化
前面已经说过UITableView中的单元格cell是在显示到用户可视区域后创建的,那么如果用户往下滚动就会继续创建显示在屏幕上的单元格,如果用户向上滚动返回到查看过的内容时同样会重新创建之前已经创建过的单元格。如此一来即使UITableView的内容不是太多,如果用户反复的上下滚动,内存也会瞬间飙升,更何况很多时候UITableView的内容是很多的(例如微博展示列表,基本向下滚动是没有底限的)
2015-11-19 15:01:27
443
原创 UItableView系列——代理
上篇文章我们已经看到通讯录的简单实现,但是我们发现单元格高度、分组标题高度以及尾部说明的高度都需要调整,此时就需要使用代理方法。UITableView代理方法有很多,例如监听单元格显示周期、监听单元格选择编辑操作、设置是否高亮显示单元格、设置行高等。1.设置行高#pragma mark - 代理方法#pragma mark 设置分组标题内容高度-(CGFloat)tableVi
2015-11-19 14:57:43
387
原创 UItableView系列——数据源
由于iOS是遵循MVC模式设计的,很多操作都是通过代理和外界沟通的,但对于数据源控件除了代理还有一个数据源属性,通过它和外界进行数据交互。 对于UITableView设置完dataSource后需要实现UITableViewDataSource协议,在这个协议中定义了多种 数据操作方法,下面通过创建一个简单的联系人管理进行演示:首先我们需要创建一个联系人模型KCContact,KCCont
2015-11-19 14:53:49
466
原创 UITableView系列——基本介绍
在iOS开发中UITableView可以说是使用最广泛的控件,我们平时使用的软件中到处都可以看到它的影子,类似于微信、QQ、新浪微博等软件基本上随处都是UITableView。当然它的广泛使用自然离不开它强大的功能,UItableView系列文章将针对UITableView重点展开讨论。 UITableView有两种风格:UITableViewStylePlain和UITableView
2015-11-19 14:46:20
420
转载 NSString+NSMutableString+NSValue+NSAraay用法汇总
/******************************************************************************************* NSString **************************************************************************************
2015-11-13 11:56:48
392
转载 Android开发从源码的角度理解Volley
经过前三篇文章的学习,Volley的用法我们已经掌握的差不多了,但是对于Volley的工作原理,恐怕有很多朋友还不是很清楚。因此,本篇文章中我们就来一起阅读一下Volley的源码,将它的工作流程整体地梳理一遍。同时,这也是Volley系列的最后一篇文章了。其实,Volley的官方文档中本身就附有了一张Volley的工作流程图,如下图所示。多数朋友突然看到一张这样的图,应
2015-08-24 09:12:29
419
转载 Android开发之Volley定制自己的Request
经过前面两篇文章的学习,我们已经掌握了Volley各种Request的使用方法,包括StringRequest、JsonRequest、ImageRequest等。其中StringRequest用于请求一条普通的文本数据,JsonRequest(JsonObjectRequest、JsonArrayRequest)用于请求一条JSON格式的数据,ImageRequest则是用于请求网络上的一张图片
2015-08-24 09:09:14
402
转载 Android开发使用Volley加载网络图片
在上篇文章中有提到过,Volley是将AsyncHttpClient和Universal-Image-Loader的优点集成于一身的一个框架。我们都知道,Universal-Image-Loader具备非常强大的加载网络图片的功能,而使用Volley,我们也可以实现基本类似的效果,并且在性能上也豪不逊色于Universal-Image-Loader,下面我们就来具体学习一下吧。1. Ima
2015-08-24 09:07:03
549
转载 Android开发初识Volley的基本用法
1. Volley简介我们平时在开发Android应用的时候不可避免地都需要用到网络技术,而多数情况下应用程序都会使用HTTP协议来发送和接收网络数据。Android系统中主要提供了两种方式来进行HTTP通信,HttpURLConnection和HttpClient,几乎在任何项目的代码中我们都能看到这两个类的身影,使用率非常高。不过HttpURLConnection和HttpCl
2015-08-24 09:05:10
415
原创 Android开发设置软键盘收索键
有时候为了布局美观,不会特意的去放置一个收索按钮,而是调用软件盘上的回车按钮作为收索。要实现把软键盘的回车按钮设置为收索按钮其实很简单,直接在Layout文件中,对EditText控件加上如下属性:android:imeOptions="actionSearch"这个属性的值还可以为其他的,例如:actionSearch: 搜索actionSend: 发送acti
2015-08-18 13:43:00
627
转载 Android数据库安全解决方案,使用SQLCipher进行加解密
我们都知道,Android系统内置了SQLite数据库,并且提供了一整套的API用于对数据库进行增删改查操作。数据库存储是我们经常会使用到的一种存储方式,相信大多数朋友对它的使用方法都已经比较熟悉了吧。在Android中,我们既可以使用原生的SQL语句来对数据进行操作,也可以使用Android API提供的CRUD方法来对数据库进行操作,两种方式各有特点,选择使用哪一种就全凭个人喜好了。
2015-08-14 11:50:18
406
原创 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
12991
4
原创 Android开发监听指定号码发来的短信
项目中碰到的需要对固定端口发送过来的短信进行解析,并且根据短信的类容作出相应的行为。查了好久,网上也有大量的资料,但是感觉都不能满足自己的要求。最后把大家的方法都看了一下,最后糅合出适合自己的,可以实现对固定号码发过来的短息进行监听。简单的说来就是写一个类继承自BroadCastReceiver,代码如下:public class SmsBroadcastReceiver extend
2015-08-05 11:03:13
878
转载 9种排序算法总结
排序算法可以说是计算机专业学生要学习的最基础的算法,但其实也是最重要的,现在大部分互联网公司笔试面试也都会涉及到排序算法的知识。除了了解思想之外,还应该动手写一写,分析一些具体思路、时间复杂度、空间复杂度和稳定性等。我们面试讨论小分队也简单讨论了一下排序算法,为了加深记忆,我自己也动手写了一些代码(Linux平台写的,自己测试是通过了),并做一些分析(由于水平较水,代码可能有误!)。
2015-08-03 21:34:06
402
原创 Android开发之定义内部类简单实现60s倒计时
前面我写过一篇关于倒计时的博客,主要是使用了一个Service来完成倒计时,这样就算页面跳转了也不会停止倒计时。但是有人给我发私信说他也需要用单倒计时,但是不用在Service中去完成,那样太麻烦了。所以这里我就再分享一种直接定义内部类TimeCount实现的方法。由于比较简单,所以我就不再贴出所有的代码,只分享一下这个内部类。java代码如下:class TimeCountFirst ext
2015-08-03 12:50:19
1347
原创 Android开发之两种方式实现连续点击两次返回键退出程序
经常看到很多程序点击一下返回键会显示再按一次退出程,然后连续点击两次返回键就退出程序了。虽然心里对这种功能实现方式有了一种大概想法,但是一直也没有去总结过。现在觉得如果项目中加上这个小功能还是很方便的,所以总结了一下实现方式,下面和大家分享两种方式。第一种:首先定义一个boolean型变量用于标示是否退出boolean isExit; 然后重写Activity中的onKeyDow
2015-07-30 22:24:48
4449
2
原创 Android开发之设置60s倒计时
同样是最近做项目碰到的一点小知识,拿出来和大家分享一下。要实现的功能是点击发送按钮后手机会接收到验证码,但是有的时候由于短信网关故障等原因可能不能及时收到短息,所以设置一种倒计时机制,当倒计时时间结束后如果还没有收到验证码短信则可以选择重新发送验证码。首先说一下我们今天用的到CountDownTimer这个抽象类,实现了倒计时的功能。将后台线程的创建和Handler队列封装成一个方便的类调用。
2015-07-30 09:54:05
4230
1
原创 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开发EditText属性详解
1、EditText输入的文字为密码形式的设置(1)通过.xml里设置: 把该EditText设为:android:password="true" // 以”.”形式显示文本(2)在代码里设置:通过设置EditText的setTransformationMethod()方法来实现隐藏密码或这显示密码。editText.setTransformationMet
2015-07-27 10:07:04
492
原创 Android开发之文件命名规范
以前自己学习Android做项目的时候都是自己一个人在单搞,所以对命名这一块没有形成什么良好的习惯,只要自己能懂就可以了。但是现在经公司实习才知道这样完全不行的,公司的项目基本都是团队合作,所以你要能看懂别人的代码,也要让别人能看懂你的代码。当我打开那些资源表的时候完全傻了,实在是太多了,完全不知道哪个是哪个。再就是我自己写的界面差不多有十几个图标,我也不知道改怎么命名别人才能懂。没办法,只能硬着
2015-07-27 09:51:41
502
原创 Android开发中EditText小技巧之如何设置光标颜色及粗细
有时为了用户体验感更好,所以我们需要对EditText的光标进行设置,这里就是关于光标颜色和粗细的设置,非常简单。第一步:在资源文件drawable下新建一个光标控制edittext_color_cursor.xml 第二步:设置EditText属性:android:textCursorDrawable="@drawable/edittext_colo
2015-07-27 09:23:20
2060
转载 android 开发画虚线、实线,画圆角矩形,一半圆角
1、画虚线,实线:建立dotted_line_gray.xml文件放在drawable文件夹下面。android:shape="line" 可以修改你想要的形状[html] view plaincopyxml version="1.0" encoding="utf-8"?> shape xmlns:android
2015-07-27 08:48:46
1164
转载 Android开发之Service完全解析,关于服务你所需知道的一切
相信大多数朋友对Service这个名词都不会陌生,没错,一个老练的Android程序员如果连Service都没听说过的话,那确实也太逊了。Service作为Android四大组件之一,在每一个应用程序中都扮演着非常重要的角色。它主要用于在后台处理一些耗时的逻辑,或者去执行某些需要长期运行的任务。必要的时候我们甚至可以在程序退出的情况下,让Service在后台继续保持运行状态。不过,虽然
2015-07-23 10:51:40
490
原创 Android开发工具Eclipse自己常用的几个快捷键
这篇博客纯粹是为了方便我自己,所以没有把所有的快捷键列出来,只是把自己经常用到的几个快捷键列出来了。Ctrl + Shift + W 关闭所有已打开的编辑窗口Alt + Shift + R 文件或变量重命名(先选中文件或变量再同时按下快捷键)Ctrl + Shift + O 自动导入需要的包并删除多余的import语句,使用频率非常高。Ct
2015-07-21 14:25:52
436
2
原创 Android实现图标右上角红色小圆球提示气泡
今天跟大家分享一个我最近在开发应用中用的到实现图标右上角红色小圆球提示气泡。相信大家都熟悉,在Android开发微信、QQ、短消息、应用商店等应用时,会考虑在图标右上角红色小圆球提示气泡再加上未读信息的数量,在应用商店上加上可以升级的应用数量,这样不占太大空间还能达到提示的目的。实现该功能可以重写View的onDraw完成该功能,也可以写布局文件完成该功能。现在使用布局文件完成。暂时先
2015-07-21 12:44:25
10984
1
原创 推荐一本Android开发入门书籍
今天跟大家推荐一本书籍《第一行代码—Android》,是郭大神的书籍,相信大家对郭大神一定不陌生吧。前段时间看到很多朋友在求这本书的电子版,所以我自己花钱去把电子版买回来了,今天就和大家分享一下这个资源,首先跟大家介绍一下这本书。CSDN超人气博主、CSDN 2013年度十大博客之星、资深Android开发者郭霖力作!第一本引入经验值、升级与宝物系统的计算机书!见证自己从菜鸟到鹰的成长!全球最
2015-07-20 09:57:24
1123
8
原创 从源码解析使用LitePal建表过程
在SQLiteOpenHelper类里getWritableDatabase()和getReadableDatabase()方法的内部实现都是调用了getDatabaseLocked()方法,该方法是处理数据库创建,表创建的核心方法。他定义了一系列逻辑骨架,但并不是具体的实现者。下面来看看该方法在创建完数据库后是怎样处理表的创建: view sourceprint?
2015-07-16 10:30:29
1294
原创 Android开发数据库之LitePal用法
前几天看了郭神的Android开发数据库高手秘籍,完全被震撼到了,所以现在把郭神的数据库高手秘籍里面的关于LitePal全部截取出来,方便自己以后查看。一、LitePal的基本用法虽说LitePal宣称是近乎零配置,但也只是“近乎”而已,它还是需要进行一些简单配置才可以使用的,那么我们第一步就先快速学习一下LitePal的配置方法。快速配置1. 引入Jar包或源码
2015-07-15 15:54:27
1765
转载 Android仿微信(五)——仿微信聊天界面,以及语音录制功能
本例为模仿微信聊天界面UI设计,文字发送以及语言录制UI。1先看效果图: 第一:chat.xml设计 Xml代码 xml version="1.0" encoding="utf-8"?> RelativeLayout xmlns:android="http://schemas.and
2015-07-14 14:19:55
4454
4
转载 Android仿微信(四)——仿QQ登陆
今天根据腾讯qq,我们做一个练习,来学习如何制作一个漂亮的布局。首先看一下官方图片 还是一个启动画面,之后进入登录页面,导航页面就不介绍了,大家可以参考微信的导航页面。首先程序进入SplashActivity,就是启动页面,Activity代码如下:[java] view plaincopypackage com
2015-07-14 14:18:21
637
CrystalBall-11124.850_32bit_64bit.zip
2021-04-14
二维码扫面源码精简版
2015-07-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人