自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(1647)
  • 资源 (15)
  • 收藏
  • 关注

原创 我写的《高性能Android开发技术》一书已正式出版全国发行

我写的《高性能Android开发技术》一书,已由北京航空航天大学出版社正式出版并全国发行,京东上的发售页面链接地址:https://item.jd.com/12602702.html感谢北京航空航天大学出版社,感谢北京航空航天大学出版社的董宜斌先生、张冀青老师,感谢CSDN,感谢给予我帮助和支持的人!谢谢你们!我的邮箱:zhangphil@live.com...

2019-05-11 23:10:56 3880 13

原创 Kotlin前置检测判断check,require,requireNotNull

当a不为null时,执行大括号里的语句(it肯定不为null)如果a == null ,则为 null。= null,则a.b()如果 a 不是 b,则为 null。当a不为null时,执行大括号里的语句(it肯定不为null)如果a == null ,则为 null。= null,则a.b()如果 a 不是 b,则为 null。当a不为null时,执行大括号里的语句(it肯定不为null)如果a == null ,则为 null。= null,则a.b()如果 a 不是 b,则为 null。

2023-10-02 23:28:55 61

原创 Android ConstraintLayout layout_constraintHorizontal layout_constraintDimensionRatio square CardView

Android ConstraintLayout按比例缩放View关键点有两个,第一,使用Android ConstraintLayout的layout_constraintDimensionRatio属性,设置宽高比缩放比例,宽:高。Android ConstraintLayout约束布局的居中_android constraintlayout 两个图片并排水平居中-CSDN博客。Android ConstraintLayout按比例缩放View_constraintlayout 比例-CSDN博客。

2023-09-28 23:24:40 20

原创 kotlin协程CoroutineScope Dispatchers.IO launch 线程Id

一般编程的技法,比如,在Android中,假设在主线程中实现了一个函数,但该函数是耗时操作,毫无疑问,需要将这个函数的实现切入非主线程中操作,那么可以设计一种托管的函数,在托管的函数里面干脏活,处理完成后,把结果抛到主线程。结果1-a: 5 - tid:22。一般编程的技法,比如,在Android中,假设在主线程中实现了一个函数,但该函数是耗时操作,毫无疑问,需要将这个函数的实现切入非主线程中操作,那么可以设计一种托管的函数,在托管的函数里面干脏活,处理完成后,把结果抛到主线程。

2023-09-27 23:06:16 73

原创 Android ConstraintLayout app:layout_constraintHorizontal_weight

Android ConstraintLayout按比例缩放View关键点有两个,第一,使用Android ConstraintLayout的layout_constraintDimensionRatio属性,设置宽高比缩放比例,宽:高。Android ConstraintLayout约束布局的居中_android constraintlayout 两个图片并排水平居中-CSDN博客。Android ConstraintLayout按比例缩放View_constraintlayout 比例-CSDN博客。

2023-09-26 23:35:42 214

原创 Kotlin异常处理runCatching,getOrNull,onFailure,onSuccess(1)

b-catch: java.lang.RuntimeException: b发生异常。kotlin异常处理try-catch-finally。kotlin异常处理try-catch-finally_zhangphil的博客-CSDN博客。

2023-09-25 23:05:11 414

原创 Kotlin只截取Float小数点后数值DecimalFormat

Java小数点数字和百分号数字之间的转换小数点数字和百分号(百分比)数字之间的转换在证券金融业很常见,需要经常进行两者之间相互转换。如代码: String s1 = "21.8%";Java小数点数字和百分号数字之间的转换_zhangphil的博客-CSDN博客。Kotlin只截取Float小数点后数值DecimalFormat。

2023-09-24 23:09:45 164

原创 git reset origin --hard解决‘Your branch is ahead of ‘origin/xxxx‘ by xx commit.’

git删除/撤销远已经push到程服务器上某次代码提交场景:不小心把一次错误的代码push到远程服务器上的分支上,需要立即删除/撤销这次代码提交。具体方法,git命令:git reset --hard git push origin HEAD --forcecommit_id可以通过git命令:git log输出获取。git删除/撤销远已经push到程服务器上某次代码提交_git删除某次push_zhangphil的博客-CSDN博客。明明2个commits已经提交,到代码仓库看,也确实已经提交成功。

2023-09-23 23:07:45 286

原创 Android读取设备所有Video视频,Kotlin

【Android设置头像,手机拍照或从本地相册选取图片作为头像】像微信、QQ、微博等社交类的APP,通常都有设置头像的功能,设置头像通常有两种方式:1,让用户通过选择本地相册之类的图片库中已有的图像,裁剪后作为头像。Android设置头像,手机拍照或从本地相册选取图片作为头像_android 头像拍照_zhangphil的博客-CSDN博客。Android图片添加文字水印并保存水印文字图片到指定文件_zhangphil的博客-CSDN博客。Android读取设备所有视频,Kotlin。

2023-09-22 23:30:59 26

原创 Android字体大小dp,sp,px系统设置字体大小变化表现

为解决这种开发场景,有多种解决方案,比如可以重写View,实现横竖切换在onMesure或者此类View的回调方法里面重新测量重新绘制View的尺寸大小。除此之外还要考虑APP在实际应用场景中,用户千奇百怪的设置,最常见的用户设置行为就是设置手机的字体大小,比如把字体设置成超大或者超小,这对屏幕适配又带来额外的问题。Android快捷便利但不常被使用的原生工具类Android SDK原生 API中,有一些常用的工具类,运用得当可以省事省力省时,何况还是Android官方提供的,现在收集整理一些出来。

2023-09-21 23:11:29 153

原创 Kotlin协程CoroutineScope异步async取消cancel等待await的任务

一般编程的技法,比如,在Android中,假设在主线程中实现了一个函数,但该函数是耗时操作,毫无疑问,需要将这个函数的实现切入非主线程中操作,那么可以设计一种托管的函数,在托管的函数里面干脏活,处理完成后,把结果抛到主线程。结果1-a: 5 - tid:22。_kotlin协程 串行。一般编程的技法,比如,在Android中,假设在主线程中实现了一个函数,但该函数是耗时操作,毫无疑问,需要将这个函数的实现切入非主线程中操作,那么可以设计一种托管的函数,在托管的函数里面干脏活,处理完成后,把结果抛到主线程。

2023-09-20 23:15:24 52

原创 adb shell命令查看当前屏幕可见最顶层Activity和Fragment及其调用栈

Android adb shell dump当前手机设备的所有activity_dump当前activity_zhangphil的博客-CSDN博客。adb shell命令dump Android app的activity栈_adb dump activity-CSDN博客。adb命令:adb shell dumpsys activity activites_dump当前activity。android adb命令获取处于当前屏幕的Activity_adb获取当前页面activity-CSDN博客。

2023-09-19 23:16:01 768

原创 Kotlin simple convert ArrayList CopyOnWriteArrayList MutableList

Java并发多线程环境中,造成死锁的最简单的场景是:多线程中的一个线程T_A持有锁L1并且申请试图获得锁L2,而多线程中另外一个线程T_B持有锁L2并且试图申请获得锁L1。线程的锁申请操作是阻塞的,于是造成线程T_A和线程T_B无法正确获得想要的锁,两个线程被阻塞进入死锁状态。Java并发多线程环境中,造成死锁的最简单的场景是:多线程中的一个线程T_A持有锁L1并且申请试图获得锁L2,而多线程中另外一个线程T_B持有锁L2并且试图申请获得锁L1。此方法返回一个线程容量为n的线程池。读时候快,写/删/改慢。

2023-09-18 23:29:24 60

原创 Kotlin File useLines nameWithoutExtension extension

try { File..._java文件转byte数组。Java把一个文件转化为byte字节数组_java文件转byte数组_zhangphil的博客-CSDN博客。Java把一个文件转化为byte字节数组_java文件转byte数组_zhangphil的博客-CSDN博客。Java把一个文件转化为byte字节数组_java文件转byte数组_zhangphil的博客-CSDN博客。Java把一个文件转化为byte字节数组_java文件转byte数组_zhangphil的博客-CSDN博客。

2023-09-17 23:03:29 280

原创 Kotlin File FileTreeWalk walkTopDown onEnter onLeave

Python实时检测文件及文件夹变动比较流行的是通过watchdog,一个例子:当创建一个文件夹,创建一个文件,或者删除一个文件夹,对文件内容写操作,都会触发事件:_python检测文件夹变动。Python遍历文件目录os.walk_for subfolder in subfolders: print(foldername+'/'+_zhangphil的博客-CSDN博客。Python实时检测文件及文件夹变动_python检测文件夹变动_zhangphil的博客-CSDN博客。

2023-09-16 23:49:26 300

原创 Kotlin文件遍历FileTreeWalk filter

try { File..._java文件转byte数组。Java把一个文件转化为byte字节数组_java文件转byte数组_zhangphil的博客-CSDN博客。Java把一个文件转化为byte字节数组_java文件转byte数组_zhangphil的博客-CSDN博客。Java把一个文件转化为byte字节数组_java文件转byte数组_zhangphil的博客-CSDN博客。Java把一个文件转化为byte字节数组_java文件转byte数组_zhangphil的博客-CSDN博客。

2023-09-15 23:17:11 181

原创 Kotlin File BufferedOutputStream write ByteArray

try { File..._java文件转byte数组。Java把一个文件转化为byte字节数组_java文件转byte数组_zhangphil的博客-CSDN博客。Java把一个文件转化为byte字节数组_java文件转byte数组_zhangphil的博客-CSDN博客。Java把一个文件转化为byte字节数组_java文件转byte数组_zhangphil的博客-CSDN博客。Java把一个文件转化为byte字节数组_java文件转byte数组_zhangphil的博客-CSDN博客。

2023-09-14 23:04:15 701

原创 Kotlin Files Paths write ByteArray writeString写多行BufferedWriter

Java把一个文件转化为byte字节数组 /** * 把一个文件转化为byte字节数组。try { File..._java文件转byte数组。Java把一个文件转化为byte字节数组_java文件转byte数组_zhangphil的博客-CSDN博客。Java把一个文件转化为byte字节数组 /** * 把一个文件转化为byte字节数组。try { File..._java文件转byte数组。Java把一个文件转化为byte字节数组_java文件转byte数组_zhangphil的博客-CSDN博客。

2023-09-13 23:03:14 320

原创 Kotlin File.reader BufferedReader readLine

try { File..._java文件转byte数组。Java把一个文件转化为byte字节数组_java文件转byte数组_zhangphil的博客-CSDN博客。Java把一个文件转化为byte字节数组_java文件转byte数组_zhangphil的博客-CSDN博客。Java把一个文件转化为byte字节数组_java文件转byte数组_zhangphil的博客-CSDN博客。Java把一个文件转化为byte字节数组_java文件转byte数组_zhangphil的博客-CSDN博客。

2023-09-12 23:02:38 557

原创 Kotlin File readText readLines readBytes

try { File..._java文件转byte数组。Java把一个文件转化为byte字节数组_java文件转byte数组_zhangphil的博客-CSDN博客。Java把一个文件转化为byte字节数组_java文件转byte数组_zhangphil的博客-CSDN博客。Java把一个文件转化为byte字节数组_java文件转byte数组_zhangphil的博客-CSDN博客。Java把一个文件转化为byte字节数组_java文件转byte数组_zhangphil的博客-CSDN博客。

2023-09-11 23:04:46 426

原创 Kotlin FileInputStream read File

Java把一个文件转化为byte字节数组 /** * 把一个文件转化为byte字节数组。try { File..._java文件转byte数组。Java把一个文件转化为byte字节数组_java文件转byte数组_zhangphil的博客-CSDN博客。Java把一个文件转化为byte字节数组 /** * 把一个文件转化为byte字节数组。try { File..._java文件转byte数组。Java把一个文件转化为byte字节数组_java文件转byte数组_zhangphil的博客-CSDN博客。

2023-09-10 23:06:34 536

原创 Kotlin File writeText appendText appendBytes readBytes readText

Java把一个文件转化为byte字节数组 /** * 把一个文件转化为byte字节数组。try { File..._java文件转byte数组。Java把一个文件转化为byte字节数组_java文件转byte数组_zhangphil的博客-CSDN博客。Kotlin Files readAllBytes readAllLines readString-CSDN博客。

2023-09-09 23:05:08 512

原创 Kotlin Files readAllBytes readAllLines readString

Java把一个文件转化为byte字节数组 /** * 把一个文件转化为byte字节数组。try { File..._java文件转byte数组。Java把一个文件转化为byte字节数组_java文件转byte数组_zhangphil的博客-CSDN博客。

2023-09-08 23:00:48 201

原创 Kotlin委托Delegate托管by

*Java观察者模式的场景:一个女孩洗澡,被很多男孩偷看。女孩洞察后,搜索坏男孩,然后继续洗澡。*//*男孩Boy.java*/import java.util.Observable;不定长函参的Java观察者模式更新数据传递import java.util.LinkedList;/** * 抽象被观察者。Java观察者模式 : Observer / Observable_zhangphil的博客-CSDN博客。不定长函参的Java观察者模式更新数据传递_zhangphil的博客-CSDN博客。

2023-09-07 23:27:51 720

原创 JDK7多线程并发环境HashMap死循环infinite loop,CPU拉满100%,Java

例如,假如在HashMap中依次、顺序添加元素:1,2,3,4,5,在遍历HashMap时输出的顺。例如,假如在HashMap中依次、顺序添加元素:1,2,3,4,5,在遍历HashMap时输出的顺。通常在初始化HashMap时候会有一个loadFactore负载因子比如0.75,当原先存储的元素size达到固有长度的0.75后,开始扩容,扩容过程用头插法把oldTable单链表的节点插入到newTable单链表,newTable单链表倒置了oldTable中的单链表。infinite loop问题。

2023-09-06 23:01:13 292

原创 Android Glide in RecyclerView,only load visible item when page return,Kotlin

【代码】Android Paging 3,kotlin(1)在实际的开发中,虽然Glide解决了快速加载图片的问题,但还有一个问题悬而未决:比如用户的头像,往往用户的头像是从服务器端读出的一个普通矩形图片,但是现在的设计一般要求在APP端的用户头像显示成圆形头像,那么此时虽然Glide可以加载,但加载出来的是一个矩形,如果要Glide_android 毛玻璃圆角。《Android图片加载与缓存开源框架:Android Glide》Android Glide是一个开源的图片加载和缓存处理的第三方框架。

2023-09-05 23:08:37 762

原创 线程安全缓存ConcurrentLinkedHashMap,Kotlin

* 基于Java LinkedList,实现Android大数据缓存策略 * 作者:Zhang Phil * 原文出处:http://blog.csdn.net/zhangphil * * 实现原理:原理的模型认为:在LinkedList的头部元素是最旧的缓存数据,在L_android大数据缓存。一句话概括的说:两者最大的不同就是,HashMap不保证put进去的数据的顺序;例如,假如在HashMap中依次、顺序添加元素:1,2,3,4,5,在遍历HashMap时输出的顺。

2023-09-04 23:01:04 139

原创 kotlin协程广播管道BroadcastChannel,订阅管道openSubscription

runBlocking 内部启动的3个协程做耗时操作,从输出可以看到3个协程交叉并发执行,runBlocking 会等到3个协程执行结束后才退出,输出结果有明确先后顺序。kotlin的runBlocking 当内部相同作用域的所有协程都运行结束后,在 runBlocking 之后的代码才能执行, runBlocking 会阻塞所在线程。kotlin的runBlocking 当内部相同作用域的所有协程都运行结束后,在 runBlocking 之后的代码才能执行, runBlocking 会阻塞所在线程。

2023-09-03 23:25:14 60

原创 Kotlin管道Channel在receiveAsFlow时debounce与flow差异

debounce蕴含了一定的缓冲思想,即,不立刻触发事件,而是先把要发射的数据进入队列,稍等一定时间(时间)延迟触发,而触发的重要条件取决于前一条数据和后一条数据的时间间隔,注意,前一条和后一条尚未被发射出去,只是待命中。A和AB都待发射,A和AB间隔100,所以跳过A,直接发射AB。debounce蕴含了一定的缓冲思想,即,不立刻触发事件,而是先把要发射的数据进入队列,稍等一定时间(时间)延迟触发,而触发的重要条件取决于前一条数据和后一条数据的时间间隔,注意,前一条和后一条尚未被发射出去,只是待命中。

2023-09-02 23:03:11 378

原创 LinkedHashMap实现LRU缓存cache机制,Kotlin

* * 基于Java LinkedList,实现Android大数据缓存策略 * 作者:Zhang Phil * 原文出处:http://blog.csdn.net/zhangphil * * 实现原理:原理的模型认为:在LinkedList的头部元素是最旧的缓存数据,在L_android大数据缓存。一句话概括的说:两者最大的不同就是,HashMap不保证put进去的数据的顺序;例如,假如在HashMap中依次、顺序添加元素:1,2,3,4,5,在遍历HashMap时输出的顺。

2023-09-01 23:02:19 737

原创 Kotlin协程flow的debounce与管道Channel

kotlin协程管道Channel。debounce蕴含了一定的缓冲思想,即,不立刻触发事件,而是先把要发射的数据进入队列,稍等一定时间(时间)延迟触发,而触发的重要条件取决于前一条数据和后一条数据的时间间隔,注意,前一条和后一条尚未被发射出去,只是待命中。发射完ABC,Kotlin审视待发射的ABCD,按理说ABCD与ABC间隔200,满足发射timeOut值,但是ABCD与ABCDE间隔100,所以跳过ABCD,直接发射ABCDE。A和AB都待发射,A和AB间隔100,所以跳过A,直接发射AB。

2023-08-31 23:14:21 133

原创 Android Glide preload RecyclerView切入后台不可见再切换可见只加载当前视野可见区域item图片,Kotlin

【代码】Android Paging 3,kotlin(1)在实际的开发中,虽然Glide解决了快速加载图片的问题,但还有一个问题悬而未决:比如用户的头像,往往用户的头像是从服务器端读出的一个普通矩形图片,但是现在的设计一般要求在APP端的用户头像显示成圆形头像,那么此时虽然Glide可以加载,但加载出来的是一个矩形,如果要Glide_android 毛玻璃圆角。《Android图片加载与缓存开源框架:Android Glide》Android Glide是一个开源的图片加载和缓存处理的第三方框架。

2023-08-30 23:08:44 917

原创 Kotlin判断null比较let布尔值Boolean

当a不为null时,执行大括号里的语句(it肯定不为null)如果a == null ,则为 null。= null,则a.b()如果 a 不是 b,则为 null。当a==null时,执行b。当a不为null时,执行大括号里的语句(it肯定不为null)如果a == null ,则为 null。= null,则a.b()如果 a 不是 b,则为 null。当a==null时,执行b。kotlin的let,with,run,apply,also,异同区别_zhangphil的博客-CSDN博客。

2023-08-29 23:05:05 1240

原创 Kotlin协程flow缓冲buffer

debounce蕴含了一定的缓冲思想,即,不立刻触发事件,而是先把要发射的数据进入队列,稍等一定时间(时间)延迟触发,而触发的重要条件取决于前一条数据和后一条数据的时间间隔,注意,前一条和后一条尚未被发射出去,只是待命中。四、map,重组改写数据。可以看到当A进入collect后,由于要delay(100),所以此时Kotlin直接返回onEach,进行下一条数据的处理,如果没有buffer,则需要等待collect里面的这条数据处理完,才调度回到onEach里面处理下一条。四、map,重组改写数据。

2023-08-28 23:38:34 62

原创 Kotlin协程flow的debounce参数timeoutMillis特性

debounce蕴含了一定的缓冲思想,即,不立刻触发事件,而是先把要发射的数据进入队列,稍等一定时间(时间)延迟触发,而触发的重要条件取决于前一条数据和后一条数据的时间间隔,注意,前一条和后一条尚未被发射出去,只是待命中。发射完ABC,Kotlin审视待发射的ABCD,按理说ABCD与ABC间隔200,满足发射timeOut值,但是ABCD与ABCDE间隔100,所以跳过ABCD,直接发射ABCDE。四、map,重组改写数据。A和AB都待发射,A和AB间隔100,所以跳过A,直接发射AB。

2023-08-27 23:04:17 271

原创 Kotlin协程flow发送时间间隔debounce

debounce蕴含了一定的缓冲思想,即,不立刻触发事件,而是先把要发射的数据进入队列,稍等一定时间(时间)延迟触发,而触发的重要条件取决于前一条数据和后一条数据的时间间隔,注意,前一条和后一条尚未被发射出去,只是待命中。发射完ABC,Kotlin审视待发射的ABCD,按理说ABCD与ABC间隔200,满足发射timeOut值,但是ABCD与ABCDE间隔100,所以跳过ABCD,直接发射ABCDE。四、map,重组改写数据。A和AB都待发射,A和AB间隔100,所以跳过A,直接发射AB。

2023-08-26 23:06:50 430

原创 Kotlin协程flow,firstOrNull只要最先first,lastOrNull只要最后

firstOrNull() //虽然发射很多数据,但只要第1次发射过来的数据。.lastOrNull() //虽然发射很多数据,但只要最后1次发射过来的数据。emit(i)delay(10)kotlin协程flow任务意外结束未emit数据retryWhen onEmpty(5)_zhangphil的博客-CSDN博客一、flow ,emit,onCompletion,collect。

2023-08-25 23:06:42 64

原创 android Bitmap没有recycle()导致native内存暴增

第一部分是Bitmap描述信息,第二部分(最大部分)是Bitmap像素(字节数组)。第一部分存在Java内存,第二部分存在C/C++维持的native内存。如果没有recycle(),GC可能只回收到java部分内存,C/C++的native内存仍被占用。android8.0后,Bitmap从Java层转移到native层,此举虽然缓解了JVM的内存压力,也提升了图形的加载速度,但不恰当的Bitmap分配/释放逻辑,将导致内存问题深藏到native层,更加隐蔽不易排查定位。

2023-08-24 23:03:55 233

原创 Chrome禁止复制粘贴网页文字内容

【代码】Chrome禁止复制粘贴网页文字内容。

2023-08-24 00:22:53 47

原创 kotlin协程flow任务意外结束未emit数据retryWhen onEmpty(5)

一、flow ,emit,onCompletion,collect。kotlin协程flow retryWhen当功能函数加载失败后重试(3)_zhangphil的博客-CSDN博客。kotlin协程flow retryWhen当功能函数加载失败后重试(3)加载一次失败,重试1次成功。kotlin协程flow retryWhen当功能函数加载失败后重试(3)_zhangphil的博客-CSDN博客。kotlin协程flow retryWhen当功能函数加载失败后重试(3)加载一次失败,重试1次成功。

2023-08-23 00:09:04 115

vcruntime140_1.dll

vcruntime140_1.dll

2022-01-10

2019年民航机场吞吐量排名.xls

2019年民航机场生产统计公报。数据来源,民用航空局。该excel表格中,罗列了中国各大城市在2019年的机场客流量数据和排名。

2020-12-10

链家2020年9月二手房数据

全国的房产价格地址经纬度等信息,2020年9月份链家的二手房数据包。下载后是一个excel表,将这个excel表另存为csv数据文件,可以用pandas读取。

2020-12-10

strava_com_sample_utf8.xls

一个excel表格数据,数据是一个公开的Python数据集,包含路径经纬度散点。提取里面的路径经纬度散点,可以构绘出地图线路。

2020-12-10

jxta2.7.zip

JXTA 2.7,P2P分布式计算框架JXTA。version 2.7。shell 2.5.

2019-08-21

AXMLPrinter2的jar文件及源代码文件

Android逆向工程之AXMLPrinter2的jar文件及源代码文件。

2018-11-08

digital-7字体(LED数字样式字体)

digital-7字体(LED数字样式字体)。该字体主要用于显示LED数字灯样式的字体。直接导入到Android assets文件下,作为font 字体使用。

2017-09-05

Android-PullLayout:仿UC天气下拉和微信下拉眼睛头部弹入淡出

Android-PullLayout:仿UC天气下拉和微信下拉眼睛头部弹入淡出

2015-11-29

QQ侧滑边栏源代码

移动版QQ侧滑边栏源代码(Android)。UI交互设计样式和QQ高度相似。

2015-10-29

DrawerLayoutDemo

Android DrawerLayout Demo

2015-09-24

MaterialDesignLibrary_Code and Lib合集

MaterialDesignLibrary_Code and Lib 内含:NineOldAndroidsLibrary包和一个测试项目:MaterialDesignActivity

2015-09-21

Android Volley

Android网络开发框架Volley需要的jar包:volley.jar。该包直接导入到自己的项目即可使用。

2015-08-27

sqlitemanager.jar

sqlitemanager.jar。用于查看SQLite数据库的第三方插件。

2015-07-16

SearchDemo

Android搜索建议演示代码,完整的项目代码文件。

2015-04-17

Android底部弹出iOS7风格对话框_库文件资源

Android底部弹出iOS7风格对话框。库文件,直接作为库添加到自己的项目加以引用即可。

2015-04-08

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除