- 博客(140)
- 资源 (31)
- 收藏
- 关注
原创 Android酷炫欢迎页播放视频,仿蚂蜂窝自由行和慕课网
Android酷炫欢迎页播放视频,仿蚂蜂窝自由行和慕课网 今天无意间看到了蚂蜂窝自由行的app,启动页很酷炫。我记得以前慕课网有个版本的app欢迎页也是播放视频的。今天就顺手写一个,代码比较简单,高手请略过。先
2016-11-10 14:15:07
11190
原创 Android属性动画应用超简单代码打造酷炫扇形(卫星),圆形菜单
Android属性动画应用超简单代码打造酷炫扇形(卫星),圆形菜单 在上一篇[Android属性动画上手实现各种动画效果,自定义动画,抛物线等] (http://blog.csdn.net/linglongxin24/article/details/53084234)对属性动画做了简单的介绍 ,如果不了解的可以去了解一下。今天突发奇想,想到既然属性动画这么强大,我们能不能用属性动画去打造一
2016-11-09 16:34:55
6074
原创 Android属性动画上手实现各种动画效果,自定义动画,抛物线等
Android属性动画上手实现各种效果,包括实现基本的透明度,缩放,平移,旋转,以及组合动画,还有就是自定义动画仿 QQ运动和抛物线动画。效果图如下: 1.为什么要用属性动画属性动画:顾名思义,属性动画就是通过改变一个控件的属性值而达到动画的效果。是3.0之后新出的动画框架。 注意:只要控件的属性提供了set属性的方法,就可以通过属性动画去操作。 属性动画和普通动画的区别:一个普通的动画,比
2016-11-08 16:57:30
13264
1
原创 Android基础动画,组合动画,帧动画,布局动画,Activity跳转动画
>Android中常用的动画都在这里了,包含了基本的动画【透明度动画,缩放动画,旋转动画,位移动画】;还有就是这四种动画的组合实现;还有布局动画,就是在加载布局时的动画;还有Activity跳转的动画。
2016-11-07 18:48:02
5409
原创 Android ListView优化之getView频繁多次调用与ViewHolder工作原理
Android中我们经常会用到ListView,然后ListView到底是如何通过ViewHolder去优化的?1.常见的适配器中利用ViewHolder去优化ListView的代码 @Override public View getView(int position, View convertView, ViewGroup parent) { ViewHolder vie
2016-11-06 20:26:07
9511
1
原创 Android宽度全屏的Dialog和DialogFragment用法
在Android开发中我们也会常用到Dialog,我们发现,系统的Dialog很多时候不能够满足我们的要求,比如有默认的title等等,还有的有边框,很难看,我们只需要加载显示我们的布局的样子。那么需要如何设置,再次记录一下。代码比较简单,高手请略过。效果图 1.设置Style <style name="Dialog_FullScreen"> <item name="
2016-11-05 22:27:15
6623
原创 Android GridView扩展仿微信微博发图动态添加删除图片
在平时的开发中,我们会看到不管是微信发朋友圈照片还是微博发布新鲜事,添加图片的时候都是选完后面还有个+号再去选择图片,这样的话比较方便用户去添加图片,有的右上角还有个-号方便用户去删除图片,而一般用户选择的图片多少都是不定的,我们只限制最大张数,我们用gridview去实现,代码可能比较简单,高手请略过。0.效果图1.准备资源图片添加图片的+号图片 删除图片的图片
2016-11-04 14:29:35
11399
5
原创 Android ListView优化之局部刷新(更新)(非notifyDataSetChanged)
在Android开发中我们经常会用到listview的数据和界面刷新动作,我们每次可能会用到的都是Adapter.notifyDataSetChanged()方法。这个方法的原理是利用观察者模式对我们的数据源进行监听,当我们的数据源发生变化的时候,会调用Adapter的getView()方法进行整个界面的刷新。这样的话我们发现,getview()会调用多次,刷新了好多个不需要刷新的item,这样的话相对而言,降低了效
2016-11-03 13:30:37
33440
3
原创 Android用RecyclerView练手仿美团分类界面
转载请注明出处:http://blog.csdn.net/linglongxin24/article/details/52997986 【DylanAndroid的csdn博客】 RecyclerView目前来说对大家可能不陌生了。由于在公司的项目中,我们一直用的listview和gridview。某天产品设计仿照美团的分类界面设计了一个界面,我发现用gridview不能实现这样的效果,所以就想到
2016-11-02 09:02:34
12100
1
原创 Android获取屏幕实际高度跟显示高度,判断Android设备是否拥有虚拟功能键
Android获取屏幕实际高度跟显示高度,判断Android设备是否拥有虚拟功能键
2016-11-01 09:56:02
11688
原创 【Android自定义View实战】之仿去哪儿网App图片按压显示指纹并缩放效果TouchFingerImageView
我们发现去哪儿网app的首页做的win8风格的方块,然后按压方块后悔发现,这个图片不但有缩放效果,而且还有显示指纹的效果,感觉跟真的手指按上去一样,很高逼格。今天我们就来看一下,这个是如何实现的。1.先看一下效果图2.第一步,准备一张指纹效果的透明背景图片由于透明的看不到效果,我就连背景图片一起在这里显示了 3.第二步开始自定义View,有详细注释import android.content.C
2016-10-31 21:35:36
3873
原创 【Android自定义View实战】之自定义项目通用的加载等待对话框LoadingDialog
在平时的Android开发中,我们难免会遇到像登陆.注册.获取数据这样的操作,而用的的网络状况不同,导致操作需要等待一定的时间,那么为了友好期间,我们需要给用户提供一个在操作完之后的一个友好的等待界面,而
2016-10-30 11:51:57
13974
原创 【Android自定义View实战】之自定义项目通用的标题栏CustomTitleBar
在Android开发中,一般来说项目中都会用到一个通用风格的标题栏,比如说左边返回按钮,中间显示标题,最后边可能会有一个保存按钮。那么我们是不是每次在新建一个布局的时候都要去用一个线性布局去加载三个控件,特别麻烦。我们自定义之后,一个控件就好了,下面就来看一下如何来打造通用的自定义标题栏。
2016-10-29 09:42:36
7832
1
原创 【Android自定义View实战】之仿QQ运动步数圆弧及动画,Dylan计步中的控件StepArcView
在之前的Android超精准计步器开发-Dylan计步中的首页用到了一个自定义控件,和QQ运动的界面有点类似,还有动画效果,下面就来讲一下这个View是如何绘制的。1.先看效果图2.效果图分析功能说明:黄色的代
2016-10-28 08:41:15
8031
1
原创 【Android自定义View实战】之自定义圆形头像CircleImageView支持加载网络图片
在Android开发中我们常常用到圆形的头像,如果每次加载之后再进行圆形裁剪特别麻烦。所以在这里写一个自定义圆形ImageView,直接去加载网络图片,这样的话就特别的方便。先上效果图主要的方法1.让自定义 CircleImageView 继承ImageView/** * 自定义圆形头像 * Created by Dylan on 2015/11/26 0026.
2016-10-27 09:03:42
5961
12
原创 【Android自定义View实战】之自定义评价打分控件RatingBar,可以自定义星星大小和间距
在Android开发中,我们经常会用到对商家或者商品的评价,运用星星进行打分。然而在Android系统中自带的打分控件,RatingBar特别不好用,间距和大小无法改变。所以,我就自定义了一个特别好用的打分控件。在项目中可以直接使用,特别简单。下面直接上图:效果图实现代码,有详细的注释在attrs中声明的可以在xml中设置的变量declare-styleable nam
2016-10-26 08:50:44
17446
17
原创 【Android自定义View实战】之获取验证码倒计时按钮
在Android开发中,我们不可避免的会做到注册功能,而现在的注册大多数都是用手机去注册的,那么注册的时候都会要求用获取验证码的方式去验证,我们接下来就来实战一下自定义获取验证码倒计时按钮:1.我们涉及到的变量倒计时时长,可设置/** * 倒计时时长,默认倒计时时间60秒; */private long length = 60 * 1000;在点击按钮之前按钮所显示的文
2016-10-25 08:54:07
6418
1
原创 【Android自定义View实战】之你应该明白的事儿
在Android的实际开发中,我们Android系统本身已经给我们提供了很丰富的UI以及各种实用的控件,例如TextView,Button,ImageView等。用这些基础控件已经能够实现非常优美的界面以及功能。然而在实际的开发中,我们由于客户的各种需求,App开发的各种标新立异,追求个性化,所以,导致我们用这些最基础的控件已经不能够满足我们的各种个性化需求。那么,我们就要考虑去自定义控件来完成我们
2016-10-24 14:45:02
4710
原创 Android开发错误锦囊-Internal Server Error
在Android开发中我们经常会遇到上传图片,然而在上传图片的过程中大家很可能会遇到Internal Server Error这个错误,下面我们来看一下这个错误是如何产生的:用xutils3上传文件1.加入xutils3框架代码 compile 'org.xutils:xutils:3.3.36'2.用法/**定义请求参数**/RequestParams
2016-10-22 10:14:06
7197
3
原创 Java Http网络请求HttpURLConnection应用之【Android网络请求框架底层剖析】
URLConnection是个抽象类,它有两个直接子类分别是HttpURLConnection和JarURLConnection。另外一个重要的类是URL,通常URL可以通过传给构造器一个String类型的参数来生成一个指向特定地址的URL实例。 每个 HttpURLConnection 实例都可用于生成单个请求,但是其他实例可以透明地共享连接到 HTTP 服务器的基础网络。请求后在 Http
2016-10-21 11:59:42
3122
原创 Java Socket通信之客户端服务端交互聊天案例
服务端接收客户端发送过来的数据,并打印在控制台上。 Tcp传输,客户端建立的过程。 1,创建服务端socket服务。通过ServerSocket对象。 2,服务端必须对外提供一个端口,否则客户端无法连接。 3,获取连接过来的客户端对象。 4,通过客户端对象获取socket流读取客户端发来的数据并打印在控制台上。服务端代码import java.io.
2016-10-20 08:49:21
3650
原创 Java递归算法应用
递归: 就是函数自身调用自身。 什么时候用递归呢? 当一个功能被重复使用,而每一次使用该功能时的参数不确定,都由上次的功能元素结果来确定。 简单说: 功能内部又用到该功能,但是传递的参数值不确定。(每次功能参与运算的未知内容不确定)。 递归的注意事项: 1:一定要定义递归的条件。 2:递归的次数不要过多。容易出现 StackOverflowError 栈内存
2016-10-19 08:55:37
6115
2
原创 Java IO流之规律总结
字符流:Reader: 用于读取字符流的抽象类。子类必须实现的方法只有 read(char[], int, int) 和 close()。|—BufferedReader :从字符输入流中读取文本,缓冲各个字符,从而实现字符、数组和行的高效读取。 可以指定缓冲区的大小,或者可使用默认的大小。大多数情况下,默认值就足够大了。|—LineNumberReader :跟踪行号的缓冲字符输入流
2016-10-18 09:02:24
2341
原创 Java IO流之拷贝(复制)文件
在android中使用最多的就是ListView,GridView,用到这两个控件那么肯定要用到适配器,那就是定义一个类继承BaseAdapter,让后覆写它里面的getCount(),getView()等方法,下面来写一个demo。1.我们来实现一个普通的ListView的Demo主布局文件:activity_main.xml<?xml version="1.0" encoding="utf-
2016-10-17 09:31:58
23753
原创 Java排序之插入排序
/**插入排序*/ public static void insertSort(int[] array) { if (array == null || array.length < 2) { return; } for (int i = 1; i < array.length;
2016-10-16 17:49:10
866
原创 Java泛型应用之打造Android中ListView和GridView万能适配器【CommonAdapter】--超简洁写法
在android中使用最多的就是ListView,GridView,用到这两个控件那么肯定要用到适配器,那就是定义一个类继承BaseAdapter,让后覆写它里面的getCount(),getView()等方法,下面来写一个demo。
2016-10-16 11:25:04
5534
原创 Java泛型应用之打造Android万能ViewHolder-超简洁写法
在ListView的Adapter中的getView()方法中的繁琐写法@Override public View getView(int position, View convertView, ViewGroup parent) { ViewHolder viewHolder = null; if (convertView == null) { c
2016-10-15 09:59:18
5244
2
原创 Java多线程之并发安全经典案例-卖票
线程相关知识1.创建线程的两种方式继承Thread类。实现Runnable接口。(这种方式较为常用)2.实现Runnable接口的好处将线程的任务从线程的子类中分离出来,进行了单独的封装。按照面向对象的思想将任务的封装成对象。避免了java单继承的局限性。多线程并发安全之卖票代码/** * Created by yuandl on 2016-
2016-10-14 09:04:36
11661
原创 Java多线程之并发协作生产者消费者设计模式JDK1.5.0+升级优化版
上一篇[Java多线程之并发协作生产者消费者设计模式]已经讲述了在Java的多线程中,如何处理并发安全的生产者消费者设计模式,不了解的可以先看看上一篇的内容上一篇中的效率和优化问题在上一篇中生产者消费者设计模式中最后为了不产生类似于“死锁”,就是多线程全部wait()导致程序无法向下继续运行的情况,我们采用了notifyAll()这个方法,那么有什么问题呢?效率问题,notifyAll()方法
2016-10-13 09:06:49
1311
1
原创 Java多线程之并发协作生产者消费者设计模式
两个线程一个生产者个一个消费者需求情景两个线程,一个负责生产,一个负责消费,生产者生产一个,消费者消费一个 涉及问题同步问题:如何保证同一资源被多个线程并发访问时的完整性。常用的同步方法是采用标记或加锁机制wait() / nofity() 方法是基类Object的两个方法,也就意味着所有Java类都会拥有这两个方法,这样,我们就可以为任何对象实现同步机制。wait()方法:当缓冲区已满/
2016-10-12 08:50:07
3696
2
原创 Java线程之线程的五种状态
线程的 5 中状态 1. New 新建状态 当程序使用 new 关键字创建了一个线程后,该线程就处于新建状态,此时线程还未启劢, 当线程对象调用 start()方法时,线程启劢,迚入 Runnable 状态 2. Runnable 可运行(就绪)状态 当线程处于 Runnable 状态时,表示线程准备就绪,等待获取 CPU 3. Running 运行(正在运行)状态
2016-10-11 14:17:48
4965
原创 Android应用程序未捕获异常并提示用户发送给开发者
Android应用程序未捕获异常并提示用户发送给开发者UncaughtExceptionSendEmail效果图如下使用Gradle构建时添加一下依赖即可:compile 'com.linglongxin24:UncaughtExceptionSendEmail:1.0.0'继承系统的application/** * Created by yuandl on 2016/4/7 0007. */
2016-10-11 09:19:54
884
原创 一道在知乎很火的 Java 题——如何同时输出 ab
思路如果正经遵从题目的原代码结构,那就得想办法构造一段代码,既能输出 a,又能返回 false。解法我也想到能否使用 System.out.print 的返回值来做文章,但奈何并不记得它返回什么,首先让我们复习一下 PrintStream 的 print、println 和 printf 方法的区别: 方法 功能 返回值 print 打印一个值或者对象 void print
2016-10-10 15:50:52
1468
原创 Java数组之获取最值
/** * 获取数组最值 */ private static int getMax(int arr[]) { int max = arr[0]; for (int i = 1; i < arr.length; i++) { if (arr[i] > max) { max = arr[i
2016-10-10 15:39:38
2735
原创 Java排序之集合排序
集合排序要么让集合的对象具有比较性也就是让集合中的对象实现Comparable接口自定义比较器实现Comparator举例:按人的年龄排序代码如下 - UserBean对象/** * Created by yuandl on 2016-10-10. */public class UserBean implements Comparable<UserBean> { privat
2016-10-10 15:29:56
658
原创 Java排序之冒泡排序
冒泡排序原理:比较相邻的元素,将小的放到前面,大的放到后面。冒泡排序丼例:{8 , 2 , 3 , 7 , 1}的排序过程如下所示:ary={8,2,3,7,1}ary={2,8,3,7,1}ary={2,3,8,7,1}ary={2,3,7,8,1}ary={2,3,7,1|8}ary={2,3,7,1|8}ary={2,3,7,1|8}ary={2,3,1|7,8}ary={2
2016-10-10 14:36:15
556
原创 Java排序之选择排序
最近在回忆java,感觉自己该写点什么,先再次复习了下选择排序选择排序原理: 1. 将数组中每个元素与第一个元素比较,如果这个元素小于第一个元 素,则交换这两个元素 2. 循环第 1 条规则,找出最小元素,放于第 1 个位置 3. 经过 n-1 轮比较完成排序简单而言,每轮都找到最小的放到前面。丼例:{8 , 2 , 3 , 7 , 1}的排序过程如下所示: 数组: ary={8
2016-10-10 09:20:01
585
原创 2015,你不应该经历的一切
2015年距离现在已经过去了许久,而我现在才想起来去,记录我2015年,遇到的遭遇。因为2015年对我来说是一个非常不平凡的。在这一年里,我静悄悄的在一家公司呆了一年,大家根本,不知道我经历了什么?而我也不愿去诉说这其中的痛苦,但是人生就是这样,你只有经历了才会成长。以此来记录我2015年在惶恐中度过的日子。
2016-01-13 10:16:31
1662
原创 for循环和变量++的坑
请写出一下代码的输出结果: int count=0; for(int i=0;i<=100;i++){ System.out.println(count+=count++); }
2015-11-30 14:36:39
991
Android数据库hibernate框架.
2014-07-23
Android 最火的快速开发框架XUtils
2014-07-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人