- 博客(41)
- 资源 (9)
- 收藏
- 关注
原创 这可能是讲的最透彻的Fragment懒加载了
没错,就是这样自信。首先,我们要明白,我们平常所说的Fragment懒加载是指数据的懒加载,而不是指Fragment本身的懒加载;同时,懒加载这个说法,需要Fragment和ViewPager结合起来用,才有懒加载一说。为什么这么说呢,因为在ViewPager结合Fragment使用的时候,google为了让用户体验更好,默认是初始化了两个Fragment,当滑动到第二个Fragmet的时...
2019-03-29 14:51:57
417
原创 Android MVP 从入门到放弃
网上有很多关于Android MVP开发模式的讲解了,这里就不详细说了。这篇文章主要说一下怎么搭建一个MVP框架,以及在搭建的过程中的一些注意事项等。因为该框架是结合RxJava2+Retrofit2+MVP模式,所以需要注意的点还是挺多的,尤其是内存泄漏方面。废话不多说,现在开始。首先说一下怎么搭建。首先我们肯定需要一个view的接口,让我们项目中所有的Activity来实现该接口,这就是M...
2019-03-24 16:15:10
587
1
原创 浅谈Glide加载图片的框架和封装
最近打算想把图片的加载框架Glide运用到自己的项目中,于是上网查了一下资料,学习了它的一些基本用法,并对其进行了简单的封装。先上图看看效果:
2016-08-27 23:45:42
3972
原创 浅谈OKHttp封装
最近在学OKHttp,看了一些文章,自己也学着对其做了一点封装。首先,需要了解OKHttp的网络请求过程:先初始化OkHttpClient对象,接着设置读取、连接的超时时间等配置。在这里配置如下:mOkHttpClient = new OkHttpClient();mOkHttpClient.newBuilder() .readTimeout(30, Ti
2016-04-19 09:59:42
1394
原创 RecycleView使用体验(二)
仿QQ会话列表,左滑item的时候,展示出删除等菜单。把每个Item看成一个LinearLayout,它包含两个子控件,一个是Item要显示的内容,还有一个当然就是我们的右侧菜单了xml version="1.0" encoding="utf-8"?>xmlns:android="http://schemas.android.com/apk/res/android"
2015-12-30 21:38:53
1214
原创 RecycleView使用体验(一)
RecycleView替代ListView势在必行,网上有关于RecycleView介绍的博客有很多,现在我把我最近使用它的一些体会和它的一些使用用法总结如下:一、ListView只有一个notifyDataSetChanged()一个方法,而RecycleView却有很多执行不同场景的方法 public final void notifyDataSetChanged()
2015-12-29 22:22:03
5956
1
原创 使用Gson解析json格式的字符串的正确方式
开发环境:Android Studio 开始前先添加google的依赖包,添加方法:在builder.gradle文件中添加'com.google.code.gson:gson:2.3.1'Eclipse开发环境的需要对应的jar包,这里就不提供下载了,直接去google下载就OK。假如有这么一个字符串:{ "title": "get_secret_chatGr
2015-12-04 21:24:51
38290
1
原创 使用AsyncTaskLoader获取本地数据(图片)
在项目中用到了AsyncTaskLoader来获取本地的图片,没错,就是它,不是AsyncTask;刚看见这个类的时候有些疑惑,想必它肯定和AsyncTask有什么联系,于是网上查找了一些资料,其实它们最主要的区别就是:AsyncTaskLoader只用来获取数据,它不考虑和UI交互,而AsyncTask可以获取数据并将数据展示在UI上。于是,写了一个demo使用AsyncTaskLoader类来
2015-12-01 21:23:02
597
转载 加速Android Studio/Gradle构建
http://blog.isming.me/2015/03/18/android-build-speed-up/
2015-11-25 23:23:14
392
原创 Activity的启动Flag
Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP如果一个栈中有两个Activity A和B(顺序为AB)当B启动A的时候,intent的flag设置为上面的情况,B会出栈(调用onDestroy方法),A不会重新创建,会回调onNewIntent(Intent intent)方法A和B中执行的方法顺序
2015-11-25 22:17:12
463
原创 使用ViewPager和Photoview实现图片左右滑动和放大缩小
为了实现图片的左右滑动以及放大缩小的功能,用到了两个组件ViewPager和PhotoView。PhotoView是开源项目,它也是通过继承ImageView然后扩充功能,实现图片放大缩小等功能;而加载网络图片用到了ImageLoader这个开源组件。工欲善其事必先利其器,本案例通过Android Studio开发,所以首先需要引入包:在Module的build.gradle文
2015-11-19 22:32:31
15505
4
原创 Android定时执行任务
在Android中,执行定时任务有多种方法,目前工作中有用到两种方法,现总结如下:1.使用Handler.postDelayed()方法有如下需求:定时不断向LinearLayout中添加TextViewprivate Handler mHandler = new Handler(); //初始化Handler//初始化布局容器LinearLayout line =
2015-11-19 00:13:14
1194
转载 Android开发工具全面转向Android Studio
Android开发工具全面转向Android Studio工欲善其事必先利其器,本文适合Android新手以及用过Eclipse而没用过Android Studio开发Android的老手,众所周知,谷歌是不会再维护和开发ADT了,旧的ADT已经是完全不能渲染Android 6.0的UI布局了,码农们必须适应时代快速转向AS。注:以下以Windows平台为标准,AS以目前最新稳
2015-11-16 21:42:30
532
转载 Android中级篇之Fresco-加载图片基础[详细图解Fresco的使用]
Fresco简单的使用—SimpleDraweeView百学须先立志—学前须知:在我们平时加载图片(不管是下载还是加载本地图片…..)的时候,我们经常会遇到这样一个需求,那就是当图片正在加载时应该呈现正在加载时的图像,当图片加载失败时应该呈现图片加载时的图像,当我们重新加载这张图片时,应该呈现重试时图像,直到这张图片加载完成。这些繁琐并且重复的如果得不到简化的话,那将是一个开发
2015-11-04 14:34:20
28838
8
转载 真正的中国天气api接口xml,json(求加精) ...
我只想说现在网上那几个api完全坑爹有木有???官方的申请不来有木有,还有收费有木有??咱这种菜鸟只能用免费的了!!!!http://m.weather.com.cn/data/101110101.html大坑有木有??反应慢不说了,还老不更新!!想贴段代码的,现在又打不开了(貌似3月4号以后没更新过)====================
2015-10-31 18:03:02
13646
17
原创 Android学习之自定义view(三)
自定义view第三篇,废话少说,直接进入正题。第一步:在attrs.xml文件中定义属性名和值,并在构造函数中获取该值resources> declare-styleablename="MyCustomView3"> attrname="horizonal_spacing"format="dimension"/> attrname
2015-09-12 22:36:13
530
转载 从Eclipse到Android Studio——改变了什么
转载自:http://blog.csdn.net/yzzst/article/details/48002187工程结构目录工程目录结构的改变,确实让我在一开始使用的时候摸不着头脑。连代码在哪里写都搞不清楚,libs库该添加在哪里也不好说。Eclipsed Eclipse把所有的Android项目资源都放到了一级目录下,而且是固定的。如下,就是一个Eclipse的常见
2015-08-29 10:21:42
237
原创 Android学习之自定义view(二)
在csdn博客上看到卡片重叠的效果,由于最近一直在学自定义view,所以想着这个卡片效果可以通过自定义view来实现,于是花了一些时间来实现,这也是学习自定义view的第二篇。按照国际惯例,自定义view三部曲走起来:1.在values文件夹下创建attrs.xml文件,内容如下: 三个属性分别代
2015-08-23 03:40:13
633
原创 Android学习之自定义view(一)
最近一直在通过看csdn上大牛的博客学自定义view,而且面试中也经常问道怎么自定义view,通过一段时间的学习,算是初步掌握了自定义view的步骤和注意事项,所以特此想总结一下目前阶段所学到的关于自定义view的知识;当然,这也是自定义view的第一篇博客,后续还会有关于自定义view的相关文章。废话少说,上干货。自定义view三部曲:一).在values文件夹下创建attr
2015-08-21 00:21:00
961
1
转载 八大排序算法
转载出处:http://blog.csdn.net/hguisu/article/details/7776068排序有内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。我们这里说说八大排序就是内部排序。 当n较大,则应采用时间复杂度为O(nlog2n)
2015-08-20 17:05:32
516
转载 J哥---------北京Android各招聘公司面试实战总结
From:再三考虑,决定把今天的面试总结一下,算是对自己的总结,如果能顺便给正在找工作的朋友有所帮助,那就不能再好了。ps: 今天面试真的好累, 昨晚没睡好,今天早上起床 也没有吃早饭,饿着肚子跑去面试的。话痨了、、今天面试了两家公司,早上出门前,感觉两家稳稳地可以拿下,but结果并不如人意。。面试公司:健德门 附近某公司面试时间:5
2015-07-31 15:22:48
1733
转载 Android屏幕适配全攻略(最权威的官方适配指导)
转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992Android的屏幕适配一直以来都在折磨着我们这些开发者,本篇文章以Google的官方文档为基础,全面而深入的讲解了Android屏幕适配的原因、重要概念、解决方案及最佳实践,我相信如果你能认真的学习本文,对于Android的屏幕适配,你将有所收获!Android屏幕适配出
2015-07-30 15:25:10
1806
原创 Android线程间通讯的几种方式
1.runOnUiThread(Runnable) 在子线程中直接使用该方法,可以更新UIrunOnUiThread(new Runnable(){//更新UI @Override public void run() { publish
2015-07-02 23:41:31
19659
原创 BroadcastReceiver广播接收器知识点总结
广播在应用程序中担任的角色:只担任开启程序其他组件的角色。不能在广播接收器中进行过多的业务逻辑和耗时的操作,不能开启线程等。根据广播的性质可以将广播分为:标准广播和有序广播根据广播的范围可以分为:全局广播和本地广播标准广播:异步的,发送广播之后,广播接收器可以同时接收到发送的广播,效率比较高有序广播:广播有优先级的(可设置),也可以截断广播 intent-fi
2015-06-27 11:29:31
974
原创 Android存储数据的5种方式
第一种:SharedPreferences1.使用键值对的方式存储数据2.通常用于:保存用户的偏好设置、选择是否保存密码、记录文档阅读的位置等3.实现方式(写入):a).获取SharedPreferences对象 getSharedPreferences("文件名",MODE_PRIVATE/MODE_MULTI_PROCESS)前者表示只能当前应用程序访问该文
2015-06-25 21:58:48
747
原创 Activity的生命周期
有两个Activity :MainActivity 和SecondActivity第一次启动的时候,执行的顺序是:MainActivity onCreate().... //开始创建的时候调用MainActivity onStart().... //能看到界面,但是不能交互 可以做一些初始化的工作,比如获
2015-06-25 21:04:37
472
原创 ImageSwitcher
Like other component,you first must define it in layout xml if you want to use it.Then,importantly,you must define a class which has implementedViewFactory interface,it has a method whose return
2013-11-07 00:05:34
829
原创 Change Screen Direction
Because changing screen direction is belong to change system setting,we should modify'mainfest' file,add the following line :In addition that,we also should set screen primary direction. Adding
2013-11-04 23:23:44
1069
原创 Display the password in plaintext
When you clicked a checkbox,display the password in plaintext. the following code is key partition!1.displaying password in plaintext when call this methodpassword.setTransformationMethod(Hi
2013-10-31 22:49:29
870
原创 Spinner Component
In this chapter,I'll introduce Spinner Component。There are two kinds of methods to achieve it,following, I'll introduce these two usual methods one by one.First: obtain spinner values from re
2013-10-29 20:51:44
894
原创 自己写的第一个Struts2的小项目,完成了基本的增删改查功能
自己写的第一个Struts2的小项目,完成了基本的增删改查功能。通过这个小项目,学到了如下的内容:1、首页要在页面中使用struts2的标签,切记一定导入struts2标签库,导入如下:2、要想使struts2默认跳转到一个页面,必须在struts.xml的配置文件中配置,配置如下: name="index">
2012-05-27 16:14:14
8565
4
原创 xheditor在线编辑器的使用
在网上看了很多的资料,终于知道xheditor 怎么使用,现将我的总结如下:在你所需要在线编辑器的工程目录下,导入xheditor_emot、xheditor_plugins和xheditor_skin、jquery四个文件夹,然后在textarea标签中加入: class="xheditor"String path = request.getContextPat
2012-04-28 14:10:51
3040
原创 MySql分页总结
关于MySql的分页问题分页时,最好先抽象出一个类,来保存关于分页的一些信息,如:1、结果集 2、总记录数 3、总页数 4、每页显示多少条记录数 5、当前页号要提高系统的效率,必须禁止频繁的访问数据库,因此需要访问一次数据库就把所有的结果集查上来,然后在程序中进行分页现在抽象出一个PageModel类,用于保存关于分页的一些信息,代码如下:package com
2012-04-08 15:51:55
764
原创 时间类性之间的转换
纠结了半下午的时间类性之间的转换,终于把它搞的有点清楚了,现附上我的总结及源代码如下: 时间类性之间的转换注:要想将时、分、秒插入数据库中,时间对应的数据字段类型应该为:Timestamp。若为date,则只能插入年、月、日1. 将String类型的Date转换为java.util.DateString strDate ="2012-04-07";
2012-04-07 16:33:41
1325
原创 一个C++问题,请大家帮帮忙啊
一个C++小程序,请大家帮帮忙哈。。。谢谢怎么将私有数据传到派生类,让派生类函数成员实用。#includeconst double PI=3.1415;class Shape{public: Shape(int l,int w,int r):length(r),width(w),radius(r){} virtual void getArea()=0; virt
2011-01-06 18:06:00
829
原创 为什么卸载了VC6.0之后再安装就不行了啊,大侠帮帮忙啊
为什么卸载了VC6.0之后再安装就不行了啊。。。。这是什么什么原因啊,需要怎么办啊???各位大侠们帮帮忙啊!
2010-12-27 21:24:00
1521
3
原创 哪里出错了。。。大侠帮帮忙啊
#include#includeclass complex{private: double real; double imag;public: complex() { real=0.0;imag=0.0; } complex(double r=0.0,double i=0.0) {real=r;imag=i;} ~complex() {
2010-12-27 10:57:00
803
2
android学习之自定义view(一)
2015-08-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人