- 博客(47)
- 资源 (8)
- 收藏
- 关注
转载 OkGo的详解
一 okgo的简介该库是封装了okhttp的标准RESTful风格的网络框架,可以与RxJava完美结合,比Retrofit更简单易用。支持大文件上传下载,上传进度回调,下载进度回调,表单上传(多文件和多参数一起上传),链式调用,可以自定义返回对象,支持Https和自签名证书,支持超时自动重连,支持cookie与session的自动管理,支持四种缓存模式缓存网络数据,支持301、302重定向,...
2018-12-19 16:05:01
16917
1
原创 记微信分享网页出现的问题
写微信分享的时候想着挺简单的,写了一半出现的错误分享出来。 第一个: 使用BottomDialog实现底部弹框的时候出现: java.lang.NoClassDefFoundError本来想着使用这个框架很快就实现了弹框的功能,代码就那几行,加入compile 'top.zibin:BottomDialog:1.0.4'超级简单,但是出现这个问题找了两三个小时到快放弃,一直在网上...
2018-07-06 14:55:50
1121
转载 Android 仿京东、拼多多商品分类页的示例代码
最近接了一个项目,要仿照京东写一个商品分类页,但需要滑动右边子分类,左边的主分类也跟着变换,写了个demo,需要的同学可以自取。先放一个写完之后的样子:写这个需求的思路也很清晰,首先左边肯定是一个listView,右边也是一个listView,这两个listView要达到一个联动的效果。右边的listView再嵌套一个GridView即可。如下图所示。所以,我们需要的数据结构也...
2018-04-17 11:14:32
11309
8
原创 基于RollPagerView实现图片轮播功能
各大电商app,新闻类app均有图片轮播的功能,自己写代码可以通过viewpager来实现,但实现起来非常不方便,要写一堆的代码。然而,业界有很多第三方的组件可以实现轮播的功能,何必自己再造车轮子?下面介绍如何基于RollPagerView实现图片轮播效果。首先在gradle中导入包 compile ('com.jude:rollviewpager:1.2.9') { e...
2018-04-13 14:24:36
308
原创 IT开发人员必备
这几天老板告诉我们要做一个商城,没有美工,自己切图加设计,全能型的,对于我这种懒癌的开发人员,找了一个超级全面的网站,傻瓜式的一种学习方式。分享给你们http://www.jikedaohang.com/#bar2 肯定对你们有很大的帮助,哈哈哈
2017-10-25 16:33:59
309
原创 Android中的Handler, Looper, MessageQueue和Thread
今天简单对andriod的消息机制做一个简单的概述,主要包括handler messagequeue,Looper。这是去面试的时候问的最多的基础的知识点,敲小黑板拉。。。。。MessageQueue:内部实现并不是用的队列,实际上它是通过一个单链表的数据结构来维护消息列表。只要包括两个操作:插入和读取,对应的方法分别是enqueueMessage和next ,其中enqueueMessage的作
2017-10-12 18:01:27
251
原创 Android开发经验之intent传递大数据
今天一上午在解决一个问题就是intent传递数据的时候发现闪退的现象,但是没有报错,我想要实现的功能就是把activity1界面的四张图片加一些信息传递到activity2界面中并且显示出来,但是当我传递两张图片的时候可以正常跳转到activity2,但是传递3张图片的时候就出现闪退的现象,所以断定是因为传递的数据比较大的原因。网上一查还真是,这绝大多数是由于Bitmap过大导致的,因为Intent
2017-09-21 16:29:39
1837
原创 图片加载--glide
最近学了一个超级简单,好用,方面,快捷的一个加载图片的第三方库–glide 之前一直在项目中用imageloader,imageLoader那一堆的配置,,,还要想着怎么解决OOM的,然后就是接触picasso加载动图,也是一句话就可以展示图片,但是我还是最喜欢这个glide,一见钟情的那种喜欢,哈哈,太方面呀,分分钟把一堆的问题全部解决,开发程序员不都是想要的吗?好了,参考郭神的博客,来给你们地
2017-09-11 14:40:09
359
原创 ButterKnife8.4的坑
很久很久没用过ButterKnife,刚开始的时候也是两年前用的,特别方便就导入一个包就可以easy的使用。如下:compile 'com.jakewharton:butterknife:8.4.0'然而一直报错,空指针,找不到view的id,很崩溃,找了就很多的错误,重新装还是不行,网上说还要安装各种插件,然而并无卵用。这就是ButterKnife8.4的坑,好了,接下来看看怎么解决了,在buil
2017-09-11 10:30:14
533
原创 Android Okhttp+Retrofit2.0+RxJava简单解析
前言:今天的重点就是来介绍一下Retyofit2.0的使用方式, retrofit是由square公司开发的。square在github上发布了很多优秀的Android开源项目。例如:otto(事件总线),leakcanary(排查内存泄露),android-times-square(日历控件),dagger(依赖注入),picasso(异步加载图片),okhttp(网络请求),retrofit(网
2017-09-08 14:17:06
802
原创 Rxjava简单解析
前言:这几天一直在读这篇文章研究Rejava这个听闻已久的超级好用的进程,简单的说明一些Rejava的原理。其实Rxjava并不是我想象的简单但是确实学到一种开发的思路就是简洁,能简洁的说明写这段代码的意思。这对于那些看别人写的项目逻辑复杂的模块就感觉头大的人,比如我,这个Rxjava实现异步操作的库所写作的方式我还是比较喜欢的。Rxjava一 什么是RxjavaRxjav
2017-09-06 18:18:18
450
原创 欢迎使用CSDN-markdown编辑器
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl
2017-09-06 10:04:54
173
转载 OkHttp和Volley对比
前言:百度一下网络通讯框架哪个最好用,其实这个根据项目的需求,最最简单的还是属于volley的使用,Google开发的开源库,它的扩展性比较好,而且主要是数据量小,通信频繁的网络操作,不过大多数项目中还是这种通信方式的。Android系统提供了两种HTTP通信类,HttpURLConnection和HttpClient,HttpURLConnection相对来说比HttpClient难用,googl
2017-08-23 17:56:47
1047
转载 Android OkHttp详细介绍
一 前言之前的项目中一直使用volley,特别的方便,但是我们服务端为了数据的安全性能突然加了一个是SSL证书,使用Https请求数据。然而volley只支持Http服务器,so不得不换成另外一种网络通信的框架OKHttp,研究了三天的OKHttp这篇文章就大概的讲一下OKHttp的使用方法。二 Android OkHttp2.1 使用OKHttp首先在项目中导入三方框架的库 compile '
2017-08-23 15:47:45
544
原创 Android底部导航栏——FragmentTabHost+ViewPager+Fragment
前言前几天写了Android底部导航栏——bottomnavigation结合viewpager的实现这是谷歌官方新发布的技术,是目前实现Android底部栏代码量最少最便捷的一种方式。今天再给大家介绍一种实现底部导航栏的比较好用的方法。注意:实现导航的实现方式有很多,大家可以选择一种自己感觉比较好的用。 一:FragmentTabHost+ViewPager+Fragment1.1 底部菜单栏实
2017-08-14 17:06:16
985
1
原创 Android底部导航栏——bottomnavigation结合viewpager的实现
前言在谷歌官方发布BottomNavigationView控件之前我们可以自己组合控件实现,比如LinearLayout + TextView(使用android:drawableTop属性+selector状态切换)、RadioGroup + RadioButton等等组合控件的方法自定义实现复杂效果。除了第三方外,现在我们多了一个选择,就是使用bottomnavigation结合viewpage
2017-08-03 16:43:25
2417
6
原创 Activity的生命周期全面分析
今天写一下使用最频繁的一个组件Activity,在使用的过程中一定要知道的一些概念,主要包括生命周期和启动模式以及IntentFilter的匹配规则。Activity的生命周期Activity的生命周期分成两部分的内容,一部分就是典型情况下的生命周期,就是用户参与下的情况,Activity的生命周期变化。一部分就是异常情况下的生命周期,就是系统被回收或者当前设备Configuration发生变化导致
2017-08-01 15:46:38
425
原创 android 6.0权限开发---拍照,打开相册问题2
前几天纠结了很久的问题已经用传统的方式解决,android 6.0权限开发—拍照,打开相册问题1为什么在Android6.0之后读取权限需要手动添加在旧的权限管理系统中,权限仅仅在App安装时询问用户一次,用户同意了这些权限App才能被安装(某些深度定制系统另说),App一旦安装后就可以偷偷的做一些不为人知的事情了。在Android6.0开始,App可以直接安装,App在运行时一个一个询问用户授予权
2017-07-25 15:13:24
901
原创 android 6.0权限开发---拍照,打开相册问题
闹心了两天的问题终于解决了,查了很多资料。原来Android6.0以上的权限需要动态的获取。 出现的问题:java.io.FileNotFoundException: /storage/emulated/0/temp_photo.jpg: open failed: EACCES (Permission denied)libcore.io.ErrnoException: open failed: E
2017-07-19 18:18:28
387
原创 前端html学习1
学习前端大框架1 Html4-html5: 企业中常用的语义化标签/多媒体标签/表单/表格等基础标签的使用及各种html5新性能2 css1-css3: 企业中常见的css属性/选择器/动画以及各种css3新特性 以上两部分完成写一个项目3 javascript javaScript基础,涵盖所以js基础语法内置对象Dom以及前端开发中的各种常见的js特效
2017-06-07 11:14:55
433
原创 BaseApplication和BaseActivity该怎么写
刚才看了一个很好的项目里面条理框框非常的清晰,感觉写的baseActivity和baseApplication很棒,先介绍一下他里面的application存放的都是什么?程序员第一笔的时候应该怎么来定义里面的东西。 首先定义一个对外提供整个应用生命周期的Context,这个不用多说了。还有寄存整个应用Activity的栈,当前Activity的弱引用,防止内存泄露,还有一个好处就是循环退
2017-03-29 17:44:04
1309
原创 自定义BaseActivity
public class BaseActivity extends AppCompatActivity { private final String TAG = BaseActivity.class.getName(); private Toast toast = null; private ProgressDialog progressDialog;
2017-03-23 15:16:54
457
原创 Android图像与动画<1>
android项目中为了界面的展示和效果,不可避免的用到图片和动画,所以我会分三个模块来讲解自己所知道的图像处理和各种的动画视觉显示,学习中,虚心接受大神们的建议。本文中主要讲解如何对大图片进行压缩避免OOM(OutOfMemory)异常,图片加载到内存中占多大内存的问题,如何避免UI线程阻塞。如果我们不注意这些很容易导致图片占用大量的可用内存导致程序崩溃。出现下面的异常: java.lang.O
2017-03-02 18:05:48
255
原创 android学习博客和网站
今天给大家分享一下我学习Android的过程中经常浏览的网站和大神们的博客 Android学习资源网站大全 整理了一些Android的博客链接,学习资源网站。站在巨人的肩膀上,会看得更远。一、值得关注的大牛博客CodeKK —— 专注于开源项目源码解析及优秀开源项目的分享 Trinea —— 性能优化、源码解析 老罗的Android之旅 —— Android系统源...
2017-02-24 10:52:57
433
转载 Android Studio中快速将布局文件中通用的属性抽取成Style
如题,有时候看见一个布局写上几百行看上去会非常吃力麻烦,这时候抽取控件样式很有必要了, Android Studio提供了抽取Style样式的方式, 可能是藏的太深了, 很少人用光标放在控件内: 右键 –>Refactor –> Extract –>Style…选择之后弹出对话框:点击OK后会在左下角弹出需要替换的其他控件如果你用的很多, 也
2017-01-12 17:22:41
4917
转载 Android Studio Mob快速集成短信验证(图文教程)
前言:现在APP应用都是需要通过手机获取短信验证码来注册应用或是实现其它功能 。而利用短信验证码来注册会员,大大降低了非法注册,很大程度上提高了用户账户的安全性,同时避免一些黑名单用户的骚扰。目前市面上已经有了很多提供短信验证的服务商,有收费的,也有免费的。而我们作为个人开发者或者公司为了节约成本,就需要用到下面介绍的一个免费的短信验证平台--- Mob.comMob平台的优点,这
2017-01-12 15:47:01
2008
1
原创 使用AppBarLayout实现炫酷的顶部栏
最近一两周一直在研究2005在Gool IO上面提出的Android design support library里面的新的控件。AppBarLayout,Coordinatorlayout,以及CollapsingToolbarLayout的综合使用,实现炫酷的顶部栏,当recycleview向下滑动的时候实现toolbar保持不变,头部背景图片有视差的向下滑动,CollapsingToolba
2017-01-04 16:20:04
1111
原创 通过 Navigation View 创建导航抽屉
Android Design Support Library 2015年在Goole I/O大会上提出的,Android Design Support Library 中提出了很多Materail Design 技术。前几天针对这个新的技术库已经写了三个控件了有强大提示的功能的TextInputLayout 悬浮按钮控件Floating action Button 和弹出框 Sn
2016-12-27 18:28:57
375
原创 Material Design中的Snackbar
今天我们讨论一下另一个组件”Snackbar”.Snackbar是design support library中另一个组件,使用Snackbar我们可以在屏幕底部(大多时候)快速弹出消息,它和Toast非常相似,但是它更灵活一些。首先,来看一下这个官方的介绍。http://www.google.com/design/spec/components/snackbars-toasts.html#
2016-12-23 17:46:56
484
原创 Material Design中 FAB (Floating Action Button) 的使用
一 什么是 FAB?FAB 全称:Floating Action Button,是浮动操作按钮,一般作为进阶操作的开关,在用户界面中通常是一个漂浮的小圆圈,达到浮动按钮的效果。它有自身独特的动态效果,比如变形、弹出、位移等等,代表着在当前页面上用户的特定的操作。 二 FloatingActionButton的简单分析FloatingActionButton继承了Image
2016-12-22 16:36:32
851
原创 强大的提示控件TextInputLayout使用以及源码分析
最近比较火的几个组件Android Design Support Library包含8个新的组件,最低支持Android2.1。使用TextInputLaypout这个控件可以非常方便的做出用户登录界面帐号密码输入框的效果。一 TextInputLayout的使用 1.1 使用这些新的组件之前先引用库,在 build.gradle 文件中加上这段代码
2016-12-21 17:28:57
1066
原创 Android新技术学习Design Support Library
作为女程序员好多天没有学习了,感觉自己颓废了好多,整天进行微信支付的一些修修改改,厌倦了这种乏味的生活,绝对还是提升自己吧。刚看了一篇博客《漫谈程序员》有些程序员的一天是这么度过的:9:00 到公司9:00~9:30 ,吃着买来的放心早餐(包子、煎饼果子、面包等等),等待电脑启动9:30~10:00 ,浏览网站,看看新闻,关注一下 NBA 或者英超10:00~10:30
2016-12-20 18:23:49
595
原创 java内存回收机制
java存储的四种方式:1、Register(寄存器)存在与CPU中,存取速度最快,但数量有限。你不能直接控制,也不能在程序中感觉到寄存器存在的任何迹象 2、Stack(栈、堆栈)存在与内存中,存取的速度和效率仅次于Register,在程序加载的时候编译器必须准确知道所需的所有空间大小,通过指针来操作。这一约束限制了程序的灵活性,所以虽然某些Java 数据存储于堆栈中——
2016-10-14 16:48:59
224
原创 Android中播放音视频
自己写了一个小的demo,使用soundpool播放音视频。简单说一下soundpool和MediaPlayer播放音视频的区别一 MediaPlayer 适合播放比较长的音频,如游戏中的背景音乐。private MediaPlayer mPlayer = null; mPlayer = MediaPlayer.create(this,R.raw.music); mPlayer.setL
2016-09-22 15:44:21
418
原创 微信支付开发准备工作和详细步骤
微信支付前的准备工作1 开发者资质认证 微信支付开发第一步就是使用公司管理者/高层帐号登录微信开放平台,进入“账号中心”,进行开发者资质认证,需要填写公司资料,包括但不限于,公司注册号,公 司营业执照,公司对外办公电话,公司对公银行卡信息(卡号,发卡行)。审核时间一般是1~7个工作日,我们一天就审核通过了,这一步非常简单。备注:1、因为从2015年10月1日起,国家实行三证(...
2016-09-21 10:33:47
12427
原创 对话框AlertDialog
这两天一直在看一本书《Android编程权威指南》感觉对以后的开发很有帮助,很基础的一本Android studio入门书。 当然是跟对我这种菜鸟级的一个提升。 对话框在之前项目中经常用到,有时候是直接封装一个类用的时候直接调用,仅限于直接使用,从来没有考虑过为什么这样用,使用的弊端,也没考虑过横屏的时候该怎么调整,嘿嘿。对话框其实是建议封装到DialogFragment(Fra
2016-09-19 18:10:28
382
转载 我们应该怎样规划自己的人生(推荐)
HP大中华区总裁孙振耀退休感言 : 如果这篇文章没有分享给你,那是我的错。 如果这篇文章分享给你了,你却没有读,继续走弯路的你不要怪我。 如果你看了这篇文章,只读了一半你就说没时间了,说明你已经是个“茫”人了。 如果你看完了,你觉得这篇文章只是讲讲大道理,说明你的人生阅历还不够,需要你把这篇文章珍藏,走出去碰几年壁,头破血流后再回来,再读,你就会感叹自己的年少无知。 如果你看完
2016-09-08 15:01:59
6590
转载 22-26岁四年你应该学会什么
最近感觉自己好浮躁,因为公司一点不忙,太闲了,对于做Android的新手好像不是什么好事,我辞职了,现在在这个公司和我之前那个差不多,工作量很小,所以自己总是很忧郁,想着做点什么事情不辜负自己的青春。年轻的心太乱,这个年龄不适合安逸的生活,心燥。刚浏览网站看到这样一篇文章,顿时感觉有点方向感,拿过来希望也可以帮助大家。共勉共勉。 1,当时公司招了大批应届本科和研究生毕业的新新人类。平均年
2016-09-08 14:25:50
606
原创 Android ORMLite 框架的入门用法
之前在项目中使用数据库存储数据比较少,一般用SharedPreferences就够了,简单的存储一些名称和密码,个人配置信息,但是在当存储的信息量大的时候肯定要用到数据库的,为了提高我们的开发效率。第一次在项目中看到使用 ORMLite 框架来定义存储的数据感觉比较简单,不过要注意一些细节。 下面简单写一下使用ORMLite 框架的用法 1、下载 ORM
2016-09-05 10:52:25
611
BottomNavigationView+ViewPager+Fragment
2017-08-14
Android底部导航栏——FragmentTabHost+ViewPager+Fragment
2017-08-14
异步加载图片示例DEMO,防止图片错位
2016-08-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人