程序员

XMPPFramework开发(三):好友列表

搞事前言 前一篇博客,我们对XMPPFramework的登录注册功能以及逻辑做了详细的说明,用户登录完成之后,我们需要做的就是获取到当前账号的好友列表和个人信息,今天这一篇博客就是对好友列表的相关逻辑以及代理方法来做一下讲解说明.我们先看看SDChat中的好友列表示意图. XMPPFramework…

程序员

瀑布流的实现分析

本文实现的是流水布局的效果,如上图所示。 图片发自简书App 图片发自简书App 瀑布流的实现方式大致有三种方式: 第一种,利用多个tableVIew来实现,但是这种方法太笨太low,一般不建议采用。 第二种,利用scrollView,在scrollView上加几张view,给这几张view绑定几个…

程序员

探索日期滚轮控件的源码

欢迎Follow我的GitHub, 关注我的简书. 在较高版本的Android SDK中, 已经修改默认的日期选择控件, 由滚轮样式变为日历样式. 对于出生日期的选择, 为了美观, 也为了便捷, 滚轮控件更有优势, 因此需要编写自定义的时间滚轮控件. 随手记也使用这类控件设置时间, 非常喜欢. 本着…

程序员

java自旋锁

概念一种锁,与互斥锁相似,基本作用是用于线程(进程)之间的同步。与普通锁不同的是,一个线程A在获得普通锁后,如果再有线程B试图获取锁,那么这个线程B将会挂起(阻塞);试想下,如果两个线程资源竞争不是特别激烈,而处理器阻塞一个线程引起的线程上下文的切换的代价高于等待资源的代价的时候(锁的已保持者保持锁…

程序员

iOS开发–APP调用打印机(非蓝牙)

日常的生活与工作中,有时候难免需要从 iPhone 手机上打印一些文件内容。由于我们使用的 iPhone 手机与打印机,以及连接打印机的电脑系统平台的差别,从而导致我们的手机不能直接连接打印机。iPhone 其实是支持网络打印的,但只是针对一些特殊的支持的 iPhone 的打印机。这里简单介绍一些方…

程序员

SDWebImage源码解读之SDWebImageCache(下)

第六篇 前言 我们在SDWebImageCache(上)中了解了这个缓存类大概的功能是什么?那么接下来就要看看这些功能是如何实现的? 再次强调,不管是图片的缓存还是其他各种不同形式的缓存,在原理上都极其相似,我们通过SDWebImageCache,来看看作者是如何实现这个功能的。 在业务中,经常要缓…