关闭

Java容器类源码-Vector的最全的源码分析

一、概述 我们都知道,在Java的Collections包含了List和Set,而List里面有ArrayList、LinkedList、还有Vector,对于很多Java初学者来说,前面两个比较常用,ArrayList查询效率比较高(底层是数组实现),而LinkedList的增删效率比较高(底层是双向链表实现)。那么Vector是什么呢?它和ArrayList、LinkedList一样,支持有...
阅读(134) 评论(0)

Java容器类源码-LinkedList的最全的源码分析

一、概述 我们都知道,在Java中容器类里面包含了Collections(单列集合)和Map(双列集合),而Collections中又包含了List(有序,元素可以重复)和Set(无序,元素不重复),而List中又包含了ArrayList、LinkedList和Vector(JDK1.2之后已经过时),所以ArrayList和LinkedList就作为了我们常用的List集合,它们都有共同点...
阅读(308) 评论(0)

Java使用HttpUrlConnection实现多线程断点下载

相信很多同学在面试的时候,经常会被面试官问到这么一个问题:请问如何实现断点下载,即在文件未下载完成时,保存进度,在下次继续下载。要实现这个功能其实并不难,只要使用一个临时文件记录当前的下载进度,然后在下次下载时,从临时文件记录的进度开始下载,从而实现功能。 当你实现以上功能之后,面试官可能又会问:那能不能实现多线程的断点下载?这个问题的话,其实如果你解决了第一个问题之后,就很容易解决这个问题...
阅读(316) 评论(0)

关于AppCompatSpinner在某些机型使用popupBackground显示异常的解决方案

最近在使用AppCompatSpinner作为一个下拉选框,在我设置popupBackground属性(即弹出框的背景颜色)的时候,发现了在测试机(三星C5 Pro)上的效果非常差,如下图所示: 这是我代码: <android.support.v7.widget.AppCompatSpinner android:layout_width=...
阅读(100) 评论(0)

Android优化方案之--Fragment的懒加载实现

一、背景在Android应用中,ViewPager是我们不可避免使用的一个控件,因为它可以使我们在占用较少空间的同时,增强内容的丰富性,同时以其内部流淌着Google的血液,所以它几乎成了每一个App的标配控件。但是,假如ViewPager的每一个Fragment都需要通过网络拉取数据加载,而ViewPager是默认加载前两项的,所以在很容易造成网络丢包或者网络堵塞等问题,所以Fragment使用懒...
阅读(2128) 评论(1)

手把手教你实现一个无限循环的轮播控件

人的理想志向往往和他的能力成正比。 —— 约翰逊摘要图片轮播已经成为了很多App必备功能,且不说它具有炫酷的视觉效果,对于很多靠广告收入的App来说,图片轮播是必不可少的,因为它通过轮播减少了广告位对界面的占用。虽然图片轮播非常的常用了,但是相信很多开发者对图片轮播的实现还是一知半晓,作为一个有抱负、有追求的程序员,我们还是希望刨根问底,所以,必要时重复造下轮子还是有必要的,何况图片轮播并没有我们想...
阅读(296) 评论(0)

AdPlayBanner:功能丰富、一键式使用的图片轮播插件

AdPlayBannerAdPlayBanner是一个Android平台基于ViewPager实现的轮播图插件,主要用以自动或者手动地播放轮播图,提供了Fresco、Picasso、Glide等图片加载方式供用户使用,以及多种图片切换动画,设置轮播时间,设置数据源顺序,提供不同分页指示器等功能,实现了一键式、灵活式的控件使用方式。下面是效果图:目前AdPlayBanner已经开源到了Github上面...
阅读(449) 评论(10)

手把手教你实现Android RecyclerView上拉加载功能

一直在用到RecyclerView时都会微微一颤,因为一直都没去了解怎么实现上拉加载,受够了每次去Github找开源引入,因为感觉就为了一个上拉加载功能而去引入一大堆你不知道有多少BUG的代码,不仅增加了项目的冗余程度,而且出现BUG的时候,你却发现很难去改,正因为这样,我就下定决心去了解如何来实现RecyclerView的上拉加载功能,相信大家和我有过同样的情况,但是我相信,只要你给自己几分钟看完这篇文章,你就会发现实现一个上拉加载是非常的简单...
阅读(1597) 评论(2)

MIUI8上在Android Studio运行出错集及其解决方案

最近用一台红米4高配版来做测试机,它是小米MIUI系统的最新版本MIUI8,我的AS是2.3版本,在网上查看了相关问题,在小米5和红米note4x等配备了MIUI8系统的手机都遇到了相同的问题,所以我相信大家第一次用MIUI8系统手机来测试肯定也会遇到这些问题。下面来列举自己在开发中使用MIUI8遇到的坑,也希望可以帮助大家快速解决问题。...
阅读(7807) 评论(2)

Android基础夯实--重温动画(五)之属性动画 ObjectAnimator详解

ObjectAnimator是ValueAnimator的子类,它和ValueAnimator一样,同样具有计算属性值的功能,但对比ValueAnimator,它会更加容易使用,因为它不再需要设置监听器来监听值的变化,因为这个工程对于ObjectAnimator来说,是自动的。这篇文章主要通过详细讲解ObejctAniamtior,加深大家对属性动画的认识,让我们对于动画的技巧掌握得更扎实。...
阅读(457) 评论(0)

Android基础夯实--重温动画(四)之属性动画 ValueAnimator详解

Animator类作为属性动画的基类,它是一个抽象类,它提供了实现动画的基本架构,但是我们不能直接使用它,因为它只是提供了最基本的的实现动画的方法,只有让它的子类继承它并进行相应扩展之后,我们才会使用它实现动画。在属性动画中,Animator包括了ValueAnimator、ObjectAnimator和AnimatorSet三个子类,下面给大家详解ValueAnimator。...
阅读(499) 评论(0)

Android基础夯实--重温动画(三)之初识Property Animation

每个人都有一定的理想,这种理想决定着他的努力和判断的方向。就在这个意义上,我从来不把安逸和快乐看作生活目的的本身——这种伦理基础,我叫它猪栏的理想。——爱因斯坦一、摘要Property Animation(属性动画)是一个非常强大的框架,它允许你让任何对象都实现动画效果。 因为不管一个对象是否出现屏幕中,你都可以随时去改变它的属性,而属性动画正是通过在某个时间点改变对象的属性实现动画效果的。Pro...
阅读(540) 评论(0)

Android基础夯实--重温动画(二)之Frame Animation

当你已经掌握了Tween Animation之后,再来看Frame Animation,你就会顿悟,喔,原来Frame Animation简单多了,那么恭喜你,你已经在Animation这条路上走得越来越远了,当你花十来分钟认真看完这篇文章,你就已经走完了动画这条小路的2/3。...
阅读(660) 评论(0)

Android基础夯实--重温动画(一)之Tween Animation

不积跬步,无以至千里;不积小流,无以成江海。学习任何东西我们都离不开扎实的基础知识,这次我们重温Android中让我们又爱又恨的动画。即便没有很好的算法思想,但是掌握了Animation的基础,我们同样可以通过动画给我们的App增色不少。...
阅读(1186) 评论(1)

Android基础夯实--你了解Handler有多少?

概述对于刚入门的同学来说,往往都会对Handler比较迷茫,到底Handler是个什么样的东西。当然,可能对于一些有工作经验的工程师来说,他们也不一定能很准确地描述,我们来看下API的介绍。 Handler是用来结合线程的消息队列来发送、处理“Message对象”和“Runnable对象”的工具。每一个Handler实例之后会关联一个线程和该线程的消息队列。当你创建一个Handler的时候,从这...
阅读(822) 评论(1)
16条 共2页1 2 下一页 尾页
    个人资料
    • 访问:75081次
    • 积分:483
    • 等级:
    • 排名:千里之外
    • 原创:16篇
    • 转载:0篇
    • 译文:0篇
    • 评论:22条
    最新评论