自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 收藏
  • 关注

原创 dagger2简单使用

1.首先应该创建一个全局的AppComponent,以提供全局使用的工具类进行使用,例如先创建一个ToastUtil类public class ToastUtil { private Context mContext; public ToastUtil(Context context){ this.mContext = context; }

2016-07-29 15:21:23 441

原创 Dagger2从入门到放弃

1.让你爱不释手:http://android.jobbole.com/82694/2.入门就不放弃http://blog.csdn.net/u012943767/article/details/51897247

2016-07-29 11:52:12 415

原创 Retrofit2.0+okhttp3设置缓存

1.首先需要一个工具方法:判断当前网络状态 方法:/** * 判断网络是否可用 * * @param context Context对象 */ public static Boolean isNetworkReachable(Context context) { ConnectivityManager cm =

2016-07-28 15:26:04 4296 1

原创 loadmorerecyclerview GitHub项目使用

项目地址:https://github.com/Brooks0129/LoadMoreRecyclerView1.使用:将项目library导入到应用中。方法,参看前面的博客。2.使用,有2中加载方式,一种是自动加载,一种是手动加载,本文以自动加载为例进行说明 <com.brooks.loadmorerecyclerview.LoadMoreRecyclerView

2016-07-28 10:39:52 1614 1

转载 Android Studio使用第三方类库

ndroid Studio导入第三方类库的方法Android Studio导入第三方类库的方法本人也刚刚开始尝试做android app的开发,听说android studio是Google支持的android 应用开发工具,所以想应该肯定比Eclipse好用吧,反正以前没有java开发经验,索性就从android studio开始学,以前一直是做.net的开发,最近使用了Ec

2016-07-27 17:29:45 485

原创 Google推荐的图片加载库Glide介绍

Google推荐的图片加载库Glide介绍 链接地址:http://jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0327/2650.htmlAndroid 平滑图片加载和缓存库 Glide 使用详解 http://www.codeceo.com/article/android-glide-usage.html

2016-07-27 16:28:13 265

原创 android-Ultra-Pull-To-Refresh 使用简介

项目地址https://github.com/liaohuqiu/android-Ultra-Pull-To-Refresh该项目只包含下拉刷新,可以包裹任何控件,如果需要添加上拉加载,可以将包裹的view改为前篇文章的LoadMoreRecyclerView实现上拉加载功能。引入方法1:直接导入lib库:ptr-lib,可到项目地址下载,然后将lib添加到项目compile proj

2016-07-27 16:15:57 6829

原创 基于RecyclerView的BaseAdapter、ViewHolder、OnItemClickListener联合使用

1、OnItemClickListenerpublic interface OnItemClickListener{ void onItemClick(ViewGroup parent, View view, T t, int position); boolean onItemLongClick(ViewGroup parent, View view, T t, int po

2016-07-27 15:29:15 1109

原创 带加载更过功能的LoadMoreRecyclerView

类实现/** * * 添加加载更多功能 * Created by chs . */public class LoadMoreRecyclerView extends RecyclerView { private boolean isScrollingToBottom = true; private FloatingActionButton floatingActio

2016-07-27 14:55:53 5148 1

原创 Android沉浸式通知栏的一个开源库SystemBarTint简单使用,android沉浸式状态栏

SystemBarTint项目地址:https://github.com/jgilfelt/SystemBarTint使用:public class BaseActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { sup

2016-07-27 14:03:20 1263

原创 为Android程序设置全局的捕获异常,提升用户体验(UncaughtExceptionHandler捕获全局异常)

主要方法:通过Thread.setDefaultUncaughtExceptionHandler()方法将异常处理类设置到线程上即可。实现类public class CrashHandler implements UncaughtExceptionHandler { public static final String TAG = "CrashHandler"; //

2016-07-27 12:30:24 2549 2

原创 Retrofit使用简介

1.基础介绍,参看Retrofit – Java(Android) 的REST 接口封装类库 :http://www.tuicool.com/articles/NnuIva2.Retrofit 2.0:有史以来最大的改进 http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0915/3460.html3.Androi

2016-07-27 09:36:56 251

原创 RxJava实战演示3----okhttp3表单提交

1.定义LoginUtilspublic class LoginUtils { private OkHttpClient client; public LoginUtils() { client = new OkHttpClient(); } /** * 定义了login操作,使用RxAndroid的编程思想 * @pa

2016-07-26 15:15:16 2305

原创 RxJava实战演示2,获取网络图片

本文参考老罗视频进行讲解下载工具类封装:public class DownLoadUtils { private OkHttpClient client; public DownLoadUtils(){ client = new OkHttpClient(); } /** * 声明一个被观察者对象,作为结果返回 * @pa

2016-07-26 11:32:36 1408

原创 RxJava实战演示1------基本代码使用

声明:本文适合有一点RxJava语法基础的同学阅读,如果基础为零,建议先看下仍物线大神的此篇文章:http://gank.io/post/560e15be2dca930e00da10831.应用程序配置,如果使用java8的lambda表达式的话,需要额外添加如下配置在全局build.gradle的 dependencies中添加:classpath 'me.tatarka:gradle-

2016-07-26 11:24:54 582

原创 观察者模式

1.观察者模式:有2个角色。观察者(Observer)和被观察者(Observable),当被观察者状态发生改变的时候,通知观察者进行相应的操作。下面通过示例程序进行说明。被观察者类:当设置的数据跟当前值不同时则会通知观察者,进行相应操作public class SimpleObservable extends Observable { private int data = 0;

2016-07-25 17:29:53 202

原创 使用MediaRecorder进行视频录制

1.仅适用MediaRecorder进行录制,此种方式网上很多,就是不加camera实现。2.使用MediaRecorder+camera进行录制,此种方式可能会出现问题,下面的代码经过在4.4以及5.1系统测试均没问题。private Camera mCamera; private SurfaceView mSurfaceView; private SurfaceHolder mSu

2016-07-20 13:40:00 809 2

转载 Android网络请求框架NoHttp简介

s

2016-07-14 10:29:28 654

转载 Android网络请求框架NoHttp简介

转载请注明本文转自严振杰的博客: http://blog.csdn.net/yanzhenjie1003目录(?)[+]NoHttpQQ技术交流1群:46523908 QQ技术交流2群:46505645 NoHttp 源码及Demo托管在Github欢迎大家Star https://github.com/yanzhenjie/NoHttp

2016-07-14 10:22:28 1608

原创 xUtils简介

xUtils简介xUtils3 api变化较多, 已转至 https://github.com/wyouflf/xUtils3xUtils 2.x对Android 6.0兼容不是很好, 请尽快升级至xUtils3.xUtils 包含了很多实用的android工具。xUtils 支持大文件上传,更全面的http请求协议支持(10种谓词),拥有更加灵活的ORM,更多的事件注解支持且不受混淆影响

2016-07-13 16:37:56 276

原创 原生网络连接方式

1.使用HttpURLConnection使用get方法实现获取网络图片public class MainActivity extends Activity { static ImageView iv; static MainActivity ma; static Handler handler = new Handler(){ //此方法在主线程中调用,可以用来刷新ui pu

2016-07-13 16:21:18 2042

原创 Android图片处理

一、加载图片到内存1.不推荐方式//相当消耗内存资源 根据图片的分辨率而定,可能会引起oom // Bitmap bitmap = BitmapFactory.decodeFile("/mnt/sdcard/photo.jpg"); // myiv.setImageBitmap(bitmap);2.推荐方式//1.得到屏幕的宽高信息 WindowManager wm =

2016-07-13 10:47:57 297

原创 自定义ProgressBar(更改系统主题方式实现)

1.先搜索到系统的ProgressBar的样式,其中的drawable是转动的那个圆环,所以,我们要更改progress_medium_white这个文件 true @drawable/progress_medium_white repeat 3500 48dip 48dip

2016-07-12 10:42:59 1180

原创 Activity中多个fragment切换

1.Activity继承FragmentActivitylayout中添加FrameLayout//获取到fragment的管理者 fragmentManager = getSupportFragmentManager(); //开启事务 FragmentTransaction mTransaction = fragmentManager.beginTransaction

2016-07-11 13:26:00 1708

原创 安卓获取当前最顶部Task应用名称

//获取到进程管理器 activityManager = (ActivityManager) getSystemService(ACTIVITY_SERVICE);//获取到当前正在运行的任务栈 List tasks = activityManager.getRunningTasks(1);//参数是想获得的个数,可以随意写 //获取到最上面的进程 Run

2016-07-11 13:14:37 3272

原创 SQLite数据库操作

创建数据库需要使用的api:SQLiteOpenHelper* 必须定义一个构造方法://arg1:数据库的名字("people.db")//arg2:游标工厂(通常直接传人null,则系统会使用默认的工厂)//arg3:数据库版本号(从1开始),方便升级使用,不断设置更大的值会调用,onUpgrade方法public MyOpenHelper(Context context,

2016-07-08 15:30:40 239

转载 Android 反射Method应用

本来想先介绍反射构造函数,代码写了一部分,发现先介绍反射构造函数不是太”灵活”,所以,就先介绍方法,感觉先介绍了方法,在讲构造函数时,往构造函数中传递参数,然后通过方法在体现出来,效果会更加! 大致介绍一下Method.java中需要用到的几个常见的方法:invoke(Object obj, Object... args) 

2016-07-07 13:49:13 4430

原创 AIDL进程间通讯

可能最让人迷惑的是Android推出来了Messager,它就是完成应用之间的通讯的。那么为什么还要有AIDL呢,官方文档介绍AIDL中有这么一句话:“只有当你允许来自不同的客户端访问你的服务并且需要处理多线程问题时你才必须使用AIDL”,其他情况下你都可以选择其他方法,如使用Messager,也能跨进程通讯。可见AIDL是处理多线程、多客户端并发访问的。而Messager是单线程处理。在说明

2016-07-07 09:56:21 275

原创 常用Linux指令

* su:切换到超级用户* #:代表当前用户是root用户* $:代表当前用户是普通用户 超级用户切换到普通用户    su 用户名称   :切换到指定的普通用户* rm:删除文件* rm 文件名.后缀名* ls* ls -l:查看目录下所有文件的详细信息* ls -a:查看隐藏文件* cd:切换目录,用法跟windows一样* cat:以文本形式输出文

2016-07-06 11:40:36 204

原创 短信联系人操作

操作之前要添加相应的读写权限1。短信数据库主要是用到了sms表中的4个字段:* body:短信内容* address:短信的发件人或收件人号码(跟你聊天那哥们的号码)* date:短信时间* type:1为收到,2为发送读取系统短信,首先查询源码获得短信数据库内容提供者的主机名和路径,代码如下:ContentResolver cr = getContentResol

2016-07-05 16:05:40 531

原创 内容提供者:ContentProvider

主要是用来暴漏自己应用的数据,供其他应用去使用1.自定义内容提供者,继承ContentProvider类,重写增删改查方法,在方法中写增删改查数据库的代码@Overridepublic Uri insert(Uri uri, ContentValues values) {db.insert("person", null, values);return uri;}2.

2016-07-05 14:42:03 316

原创 进入相机,按home退出,再按camera键进入相机,需要按两次返回键才能退出问题

1.由于camera键进入方式引发的此问题,将 CameraButtonIntentReceiver的启动方式修改为 i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK );

2016-07-01 10:54:37 1232

原创 拍照各阶段耗时分析

photoMode -> cameradeviceimply-> cameramanager->camera(frameworks\base\core\java\android\hardware)->android_hardware_Camera(frameworks/base/core/jni)从ShutterButton按下到抬起再到形成照片整个过程各阶段所消耗时间如下:1.shu

2016-07-01 10:48:48 582

空空如也

空空如也

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

TA关注的人

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