Java1.8新特性中的观察者模式 Java1.8新特性里的类封装的观测者模式,可以简化过去定义观察者设计模式(订阅发布模式)代码的步骤某一个事物状态发生改变,从而产生一系列的连锁反应,那么这个事务就是被观察者;原理:当被观察者发送变化的时候,是由被观察者主动通知观察者,我发送了变化,你要根据这个变化去做对应的逻辑处理 * 采用这种设计模式的典型:EventBus,RxAndroid *
JAVA8的新特性 网上介绍java8新特性的概念已经很多了,我就不过多说了;直接教你怎么使用:一.配置环境:1.在工作空间的build.gradle中配置buildscript { repositories { ..... // Java8 环境的搭建,所使用的配置 mavenCe
OOM的出现及解决(加载图片) oom:Android(Java)中常见的容易引起内存泄漏的不良代码Android主要应用在嵌入式设备当中,而嵌入式设备由于一些众所周知的条件限制,通常都不会有很高的配置,特别是内存是比较有限的。如果我们编写的代码当中有太多的对内存使用不当的地方,难免会使得我们的设备运行缓慢,甚至是死机。为了能够使得Android应用程序安全且快速的运行,Android 的每个应用程序都会使用一个专有的D
xrecyclerview http://m.blog.csdn.net/zhangpeisen/article/details/77564211 https://github.com/jianghejie/XRecyclerView
自定义拖动View public class ImageSurfaceView extends SurfaceView implements SurfaceHolder.Callback, OnGestureListener { private final static String TAG = ImageSurfaceView.class.getSimpleName(); private Inp
权重适配,百分比适配,自动化适配,代码适配 这几个适配很少用,都各自有很多缺点,在这里只做简单记录;权重适配:只能在LinearLayout中使用,缺点:只能适配比例,但是不能控制控件的形状;综上所述,wrap_content与0dp有着相同的效果;百分比适配:参考鸿洋博客;http://blog.csdn.net/lmj623565791/articl
Dimens适配与布局适配 看完上面这些基本操作已经完成,但是有很多人在原理方面不是太理解;我大概写一下自己的理解吧!dimens.XML文件适配,主要是根据不同的手机分辨率(也可以说是密度),设置显示不同大小控件,也就是系统会自动选择values文件进行适配;
android6.0权限封装及全局捕获异常 (一定要看完,后面有惊喜哦)Android6.0以前,Android的权限机制比较简单,开发者在AndroidManifest文件中声明需要的权限,APP安装时,系统提示用户APP将获取的权限,需要用户同意授权才能继续安装,从此APP便永久的获得了授权。然而,同期的iOS对于权限的处理会更加灵活,权限的授予并不是在安装时,而是在APP运行时,用户可以根据自身的需要,决定是否授予APP某一权限,
屏幕适配之图片适配 屏幕适配总共有6种(我知道的):图片适配,dimens适配,布局(Layout)适配,权重适配,百分比适配;今天只说图片适配:图片适配主要是根据不同的手机密度,设置显示不同大小的图片;下面首先说明下我们为什么要屏幕适配:(此片博文有亮点!)首先上一张图片直接说明问题所在;看到了吧,自己写的自定义控件,在不同分辨率手机上显示,就会出现这个情况;你要是用户你还会用嘛!不会;
Android 全局异常捕获 本篇博文参考:http://blog.csdn.net/zly921112/article/details/51867079android中捕获异常有很多,总共分为第三方和原生的;第三方呢没什么好说的(官方文档)今天重点说下android原生的全局异常捕获:UncaughtExceptionHandler不多废话直接代码:(需要的直接CV就可以用)在application中
百度地图 首先这是个第三方,基础的东西就不说了;直接进入正题:首先复制jar包和so文件;把so文件在gradle中配置: sourceSets { main { jniLibs.srcDir 'libs' }在清单文件中注册service: <service android:name="com.baidu.l
OKHttp封装 下面是出自本人之手的一个OKHttp的封装:(简单易懂,注释详尽)/** * Created by peiyan on 2017/9/6. * okhttp的中级封装,实现两个功能: * 1.从服务端下载数据; * 2.从客户端提交数据; * 1.节约内存,使所有的网络请求都用一个okhttpclient和handler对象 * 2.解决okhttp,网络请求成功,代码在子线程
git常用命令 查看、添加、提交、删除、找回,重置修改文件git help # 显示command的helpgit show # 显示某次提交的内容 git show $idgit co -- # 抛弃工作区修改git co . # 抛弃工作区修改git add # 将工作文件修改提交到本地暂存区git add . # 将所有修改过的工作文件提交暂存区git rm # 从版本库
属性动画 今天主要说两个属性动画的执行类:ObjectAnimator与 ValueAnimator;一 :ObjectAnimctor:ObjectAnimator属性动画的特点:动画效果会改变控件的位置,且开启动画的是动画对象,而不是控件对象注意:属性动画在android3.0以后出现的,所以需要把清单文件里的最低兼容版本修改为11以上;现在手机基本都是4.0
OkHttp+RecyclerView加载图片瀑布流 这里这个小Demo里面主要有OKHttp,RecyclerView,picasso等开源库及网络框架;首先添加需要用到的依赖: compile 'com.android.support:recyclerview-v7:26.0.0-alpha1' compile 'com.squareup.picasso:picasso:2.5.2' compile
OkHttp使用及工具类封装 今天主要跟大家说一下这个网络请求框架OKHttp首先给大家推荐两个很好的博客(掘金):http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0106/2275.html(掘金)http://blog.csdn.net/lmj623565791/article/details/47911083(张鸿洋博客)有其他需要了解
Walle多渠道打包 Walle多渠道打包介绍Android 7.0 引入一项新的应用签名方案 APK Signature Scheme v2,它能提供更快的应用安装时间和更多针对未授权 APK 文件更改的保护。在默认情况下,android Studio 2.2 和 Android Plugin for Gradle 2.2 会使用 APK Signature Scheme v2 和传统签名方案来签署您
排序(正序与反序)与popupwindow 先看看实现的效果:大概需要实现的效果就是:网络获取数据,根据数据里的价格进行排序(反序和正序),点击条目,弹出自定义popupwindow,点击”是“删除条目并隐藏popupwindow,点击“否”隐藏popupwindow;下面直接上代码:MainActivity:public class MainActivity extends AppCompatA