自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 Socket 通信原理(Android客户端和服务器以TCP&&UDP方式互通)

文章转自:http://blog.csdn.net/mad1989/article/details/9147661一、Socket通信简介 Android与服务器的通信方式主要有两种,一是Http通信,一是Socket通信。两者的最大差异在于,http连接使用的是“请求—响应方式”,即在请求时建立连接通道,当客户端向服务器发送请求后,服务器端才能向客户端返回数据。而So

2017-02-11 15:06:07 358

转载 Android 和 Html 之间的交互

转载地址:http://blog.csdn.NET/ithomer/article/details/8737999源码地址:http://download.csdn.Net/detail/sunboy_2050/5208717Android 中可以通过webview来实现和js的交互,在程序中调用js代码,只需要将webview控件的支持js的属性设置为tr

2017-02-11 11:51:35 294

原创 nohttp的封装

使用nohttp为了方便做了封装,网上找了一些资料,根据自己的需要修改融合了一下,首先在gradle中添加nohttp的依赖,接下来就是封装代码:分为三部分,首先新建一个类CallServer,在其构造函数中创建一个请求队列requestqueen,再就是注意将callserver的实体类对象获取写成单例具体代码如下:/** * Created by gaowei on 2017/1

2017-01-18 16:15:24 643

原创 安卓软键盘修改以及Editetext得失焦点回调

项目中遇到的修改软键盘以及editetext的相关问题,下面简单描述一下:首先是修改软键盘:键盘上的回车键是有很多模式的,我们可以在布局文件中的editetext里进行设置,有个属性是imeOptions,有很多属性如下图:如图中actionGo,actionNext,actionSearch,actionSend等都可以进行设置,比如我们常用的搜索,发送对应的就是actionSe

2017-01-18 12:07:51 649

原创 背景可自动填充屏幕宽度flowlayout

前几天转载了一个项目中经常会用到的flowlayout,大神写的很详细,需要了可以去看看,今天再分享一个不一样的flowlayout,背景可自动填充屏幕宽度,展示效果较好,可以先看下:如图不管几个标签总是占满一行,下面就看看是如何自定义的注释很详细就直接粘代码了:public class FlowLayout extends ViewGroup{ public stat

2017-01-03 10:45:27 561

原创 自定义组合控件

之前看过一篇博客自定义组合控件,感觉比较有代表性,今天学习一下,也分享给大家,用自定义组合控件的方法写一个我们项目中常见的titlebar,首先写一个布局,很简单,就是左右各一个按钮,中间是标题,不过这里使用merge标签,因为我们还会去继承Relativelayout,为了不叠加嵌套使用Relativelayout,这里用merge。如下title_bar布局:xml version

2016-12-28 17:27:35 371

转载 Android 自定义ViewGroup 实战篇 -> 实现FlowLayout

1、概述上一篇已经基本给大家介绍了如何自定义ViewGroup,如果你还不了解,请查看:Android 手把手教您自定ViewGroup ,本篇将使用上篇介绍的方法,给大家带来一个实例:实现FlowLayout,何为FlowLayout,如果对Java的Swing比较熟悉的话一定不会陌生,就是控件根据ViewGroup的宽,自动的往右添加,如果当前行剩余空间不足,则自动添加到下一行。有点所

2016-12-26 15:27:59 273

转载 Android应用开发之PNG、IconFont、SVG图标资源优化详解

1 背景最近因为一些个人私事导致好久没写博客了,多事之年总算要过去了,突然没了动力,所以赶紧先拿个最近项目中重构的一个小知识点充下数,老题重谈。在我们App开发中大家可能都会有过如下痛疾(程序员和设计妹妹注意喽):好多小的图标好烦人,又占体积还要考虑分辨率,一拉伸就模糊等。同一个图标不同状态还有不同颜色的多张。总是幻想IOS、Android、Web等对于一个图标只切一次图多

2016-12-20 14:57:09 592

转载 在Java中如何高效的判断数组中是否包含某个元素

如何检查一个数组(无序)是否包含一个特定的值?这是一个在Java中经常用到的并且非常有用的操作。同时,这个问题在Stack Overflow中也是一个非常热门的问题。在投票比较高的几个答案中给出了几种不同的方法,但是他们的时间复杂度也是各不相同的。本文将分析几种常见用法及其时间成本。检查数组是否包含某个值的方法使用List123

2016-12-20 13:34:32 317

原创 图片浏览本地保存

写写笔记记录一下项目中写的图片浏览及系统图库保存的功能,先看看效果:如上,类似于相册浏览,最终将图片保存在本地,在系统图库可浏览,至于可缩放的imageview就不做说明了,直接用了,做法很多可以自行google,下面代码主要说明怎样从网络保存到本地图库的首先findviewbyid获得保存按钮,点击事件中做图片保存://点击保存按钮,将当页图片保存在本地mTvSave.

2016-12-16 14:05:41 321

原创 自定义头布局下拉变大的ScrollView

最近项目需要在用户信息界面做一个下拉实现用户头像变大这么一个效果,网上也看了一些demo,下来给大家分享一个自认为比较简单的一个例子,还是老规矩先看效果,(不必在意角上旋转的菊花,另一篇博客中有讲):思路: 1. 获得要放大的控件,并获得其宽高; 2. 在顶部时继续往下拉,通过LayoutParams改变控件的宽高; 3. 手指抬起时初始化各项参数,通过属性动画回弹控件。

2016-12-07 14:01:59 1224 1

原创 SwipeRefreshLayout + RecyclerView 实现 上拉刷新 和 下拉加载更多

项目迭代需要更换下拉刷新和上滑加载更多的效果,就研究了一下安卓自带的刷新的控件SwipeRefreshLayout,挺好用的效果也不错,先上图:我用的是swiperefreshlayout配合recyclerview做的,还是一样先看xml文件,写法和pulltorefresh一样,包裹起来:<android.support.v4.widget.SwipeRefreshLayo

2016-12-07 12:00:42 3968

原创 围绕中心匀速,加速,减速转动的动画

目前项目中有个动画的需求,一张花瓣图片在头像下拉的时候会匀速转动的效果,做起来很简单就是一个简单的动画,下来给大家简单介绍一下:1,在xml文件中写一个imageview,用于放置待旋转的图片。2,在res目录下的anim文件夹下(没有就自己新建)写动画,代码如下:xml version="1.0" encoding="utf-8"?>xmlns:android="http://

2016-12-07 10:35:19 1014

原创 Glide加载图片的变形问题

问题描述:在listview,recycleview使用glide加载图片的时候出现第一次加载的图片略大,刷新后即可恢复正常的现象,影响用户体验解决的方法:首先将自己的imageview的scaleType属性设置为centerCrop,然后使用glide的时候如下设置即可:Glide.with(context).load(url).asBitmap().centerCrop().

2016-11-26 17:23:40 5486

转载 类似于qq的侧边栏

1、概述之前写了一个Android 高仿 QQ5.0 侧滑菜单效果 自定义控件来袭 ,恰逢QQ5.2又加了一个右侧菜单,刚好看了下DrawerLayout,一方面官方的东西,我都比较感兴趣;另一方面,这玩意用起来的确方便,于是简单写了个demo,高仿QQ5.2双向侧滑,分享给大家。首先看看效果图:DrawerLayout用起来真的很方便,下面一起看看用法~

2016-11-11 17:27:41 536

转载 EventBus使用详解(二)——EventBus使用进阶

一、概述前一篇给大家装简单演示了EventBus的onEventMainThread()函数的接收,其实EventBus还有另外有个不同的函数,他们分别是:1、onEvent2、onEventMainThread3、onEventBackgroundThread4、onEventAsync这四种订阅函数都是使用onEvent开头的,它们的功能稍有不同,在介绍不同之前先介

2016-09-27 10:51:45 201

转载 EventBus使用详解(一)——初步使用EventBus

一、概述EventBus是一款针对Android优化的发布/订阅事件总线。主要功能是替代Intent,Handler,BroadCast在Fragment,Activity,Service,线程之间传递消息.优点是开销小,代码更优雅。以及将发送者和接收者解耦。1、下载EventBus的类库源码:https://github.com/greenrobot/EventBus2、基本使用

2016-09-27 10:48:02 157

原创 简析MVC到MVP再到MVVM

开发中经常会被问到什么是MVC,什么又是MVP、MVVM,这里为大家简单的介绍一下这三者以及他们之间的关系。随着计算机软件的发展,当需求变得庞大,解决方案也会变得庞大;当解决方案变得庞大,就会出现细分;当出现细分,就会出现按哪种方式管理的问题。软件从处理一件事务发展到了要处理许多事务,各事务间有包含、顺序、主次等等的关系,变得越来越复杂。因为数据与逻辑庞大了,所以数据与逻辑就分离了,然后时间和

2016-09-20 15:36:56 342

转载 Android Fragment 真正的完全解析(下)

本篇将介绍上篇博客提到的:如何管理Fragment回退栈,Fragment如何与Activity交互,Fragment与Activity交互的最佳实践,没有视图的Fragment的用处,使用Fragment创建对话框,如何与ActionBar,MenuItem集成等~~1、管理Fragment回退栈类似与Android系统为Activity维护一个任务栈,我们也可以通过Activi

2016-09-10 09:37:58 195

转载 Android Fragment 真正的完全解析(上)

自从Fragment出现,曾经有段时间,感觉大家谈什么都能跟Fragment谈上关系,做什么都要问下Fragment能实现不~~~哈哈,是不是有点过~~~本篇博客力求为大家说明Fragment如何产生,什么是Fragment,Fragment生命周期,如何静态和动态的使用Fragment,Fragment回退栈,Fragment事务;以及Fragment的一些特殊用途,例如:没有布局的Fr

2016-09-10 09:30:03 209

原创 安卓开发规范整理

开始学习安卓的时候,对开发中的一些规范都不是很清楚,往往是按照自己的想法来做,最典型的就是命名,没有任何规范,到最后的结果是代码写完了自己回头看都蒙,那么后期维护起来就很难,如果自己一个人开发还好,可是如果一个项目是团队分工合作,这样让你的同事去看你的代码就更加吃力了,因为大家之间的编程方式不一样,所以,在开发过程中,命名规范统一尤为重要,最好是团队中统一好大家命名方法,这样对于日后的工作会轻松很

2016-08-31 10:27:51 224

原创 PING++微信支付问题小结

ping++中微信支付问题小结: 1.ping++测试微信支付时必须打包签名才可以,此处注意要在微信开放平台上注册应用。 2.ping++集成支付是从服务器返回数据中获取charge,然后将charge转成json格式,用于调用起支付接口,这里容易出问题,使用studio开发时有个很好用的实体类生成工具gsonformart,那我们生成实体类时一般是复制服务器返回的数据然后用工具自动生成,这时

2016-08-30 23:58:36 2219

原创 AndroidStudio集成sharesdk的问题解析

ShareSdk在eclipse中使用快速集成工具很容易集成,因为生成的同名文件和eclipse的文件结构相同,但是在studio中就不同了,下面我们重点说下studio中怎样集成。首先还是用快速集成工具生成同名文件夹,打开后里面有四个文件夹,分别是assets,libs,res,src。在studio中切换到project面板,将assets文件夹复制到main目录下,

2016-07-29 16:45:34 654

原创 自定义日历控件CalendarView

该控件主要有CalendarView,CalendarAdapter,LunarCalendar几个类和一个接口ClickDataListener构成。主要代码如下:CalendarViewpublic class CalendarView extends LinearLayout implements View.OnClickListener { private final

2016-07-27 11:57:41 3185 1

原创 自定义的毛玻璃效果,高斯模糊

项目中头像的背景采用模糊处理,如下图:核心代码如下:新建一个高斯模糊工具类/** * Created by gaowei on 2016/6/27. */public class BitmapBlurUtil { private static ExecutorService executor; private static int POOL_SIZE

2016-07-08 16:06:26 1082

原创 适用于头像的圆形的ImageView

话不多说,直接上代码:我项目中用到的一个自定义的RoundImageView核心代码:RoundImageView.class可直接复制使用/** * Created by gaowei on 2016/6/27. */public class RoundImageView extends ImageView { /** * 图片的类型,圆形or圆角

2016-07-08 15:45:37 369

原创 AndroidStudio导入GitHub项目时遇到的问题

报出错误: Gradle sync failed: Plugin with id 'com.github.dcendents.android-maven' not found.         Consult IDE log for more details (Help | Show Log)解决:在project目录下找到build.gradle文件,修改buildscript,在dep

2016-06-17 10:24:20 569

空空如也

空空如也

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

TA关注的人

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