自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Android视频桌面开发

2018-05-09 11:02:47 581

原创 Android MVP,Retrofit请求库封装

前言我们在开始一个新项目的时候,肯定会涉及到一些通用工具的使用,比如一些util工具类、图片加载库、网络请求库等。本篇博文就是对这些通用工具类的一些封装,这样可以节省很多开发时间。下面就以Retrofit的封装为例向大家介绍如何使用这些library。Apipublic class Api { private static final int TIME_OUT = 1...

2018-03-26 14:29:05 524 2

原创 Java设计模式之单例模式

前言这漠北风沙的回音 到底滚烫了谁的爱情 我不敢靠近 前世的风景简介设计模式(Design Pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结,使用设计模式是为了可重用代码、让代码更容易被他人理解并且保证代码可靠性。单例模式单例模式是确保一个类在内存中只能有一个对象存在,由自身初始化实例并向整个系统提供这个实例。初始化懒汉式...

2018-03-10 15:30:28 249

原创 Android Activity Transition Animation

前言久未放晴的天空 依旧留着你的笑容 哭过 却无法掩埋歉疚简介Activity Transition Animation主要实现的是Activity间的动画切换,即我们常说的场景动画,主要有: slide(位移) fade(渐变) explode(扩散) Activity shared elements(Activity view间动画切换) ...

2018-02-09 14:08:31 926

原创 Android CircularReveal动画

前言而我已经分不清 你是友情 还是错过的爱情简介CircularReveal是Google在Api版本21实现的一种动画,视觉效果类似于涟漪,主要实现api是通过ViewAnimationUtils的createCircularReveal方法。效果图方法/** * @param view 动画view * @par

2018-02-03 15:17:36 383

原创 VideoView播放视频黑屏问题处理

前言你又擦肩而过 你耳机听什么 能不能告诉我 ……. 记得 我写给你的情书 都什么年代了 到现在我还在写着 总有一天总有一年会发现 有人默默的陪在你的身边 也许 我不该在你的世界 当你收到情书 也代表我已经走远简介Android原生播放器VideoView在播放视频前会有黑屏问题,我们可以在视频播放前预先展示张预览图,等到视频真正开始播放时再隐藏预览图。

2018-01-18 19:53:01 4783

原创 Retrofit okhttp使用

前言云水边静沐暖阳,烟波里久违的故乡,别来无恙,你在心上。简介今天给大家分享下现在Android中主流的网络请求库retrofit和okhttp。 我们将结合一个银行卡信息查询的案例进行介绍。案例介绍我们使用的是mob提供的api开放接口–银行卡信息查询点击查看,其请求示例和返回参数见下图 添加依赖compile 'com.squareup.retrofit2:retrofit:2.3.0'

2017-08-21 23:26:38 698

原创 Android仿美团订单悬浮view

前言又是清明雨上,折菊寄到你身旁,把你最爱的歌来轻轻唱。简介今天订餐无意中看到美团外卖有个显示订单进度的view,效果还不错,便随手写了下。效果图实现这里我们是继承LinearLayout来实现的。一 重写onMeasure()定义父view的宽高与子view的宽高相同。 @Override protected void onMeasure(int widthMeasureSpec, int

2017-04-04 15:51:16 4492

原创 Android中Toolbar的使用

前言曾在罗辑思维看到过这样一段话:人做一切都应该是为了自己。 做工作,是为了自己的能力有成长。 做公益,是为了自己对社会有担当。 着装整洁,是为了对自己的每一刻时光负责。简介今天给大家带来的是android中Toolbar的相关用法,我们直接来看下效果图。效果图实现步骤1. materialMenu的使用为了实现效果图中的点击icon切换动画,我们需要引入materialMenu的librar

2016-11-30 10:15:16 1080

原创 Android实现ShareSDK分享

前言当恩怨各一半,我怎么圈揽,看灯笼血红染,寻仇已太晚,月下门童喟叹,昨夜太平长安。简介今天给大家带来的是使用ShareSDK实现应用分享的功能。下面我们先看下效果图。效果图步骤1. 获取AppKey访问mob官网http://mob.com注册账号–》点击头像进入“后台中心”–》选择shareSDK–》添加应用–》获取AppKey。 点击添加后,就可以生成项目对应的AppKey。 2. SDK

2016-11-23 11:04:08 7576 8

原创 Android中仿支付宝月账单view

前言昨夜同门云集推杯又换盏,今朝茶凉酒寒豪言成笑谈。半生累,尽徒然,碑文完美有谁看,隐居山水之间誓与浮名散。简介今天给大家带来的是支付宝的月账单view的实现,看到标题,你可能会觉得是自定义view的相关实现,这里可能要让你失望了,因为这里我们用的是github上的一个开源项目。1. 效果图2. MPAndroidChart我们用的是MPAndroidChart打开链接来实现的效果,它可以实现柱状图

2016-11-22 11:02:26 7640

原创 Android进程间通讯之重识AIDL

前言就像一部电影原谅惨败的票房,我走在街上,闷着头游荡,把心事流放。简介在之前的一篇文章中点击查看,我们曾讲过Android中AIDL的使用,它可以实现进程间的通信。今天来整理之前写的东西,突然发现了新的问题。 由于本次博文是基于之前的AIDL文章来写的,所以今天我们只是大概做个总结,如果你还没有看过我之前写的关于AIDL的文章点击打开链接,可以先去阅读下。项目结构1. 服务端2. 客户端问题1.

2016-11-16 14:53:22 392

原创 Android中加速和位置传感器的使用

前言如今灯下闲读红袖添香,半生浮名只是虚妄。简介不知道大家有没有注意过,在我们接打电话的时候,当我们把手机放在耳边的时候,屏幕会自动熄灭,而当我们拿下来的时候,屏幕又亮了,这其实是Android中传感器的作用。所以今天就给大家带来一些Android中传感器的相关知识。 今天我们主要演示两个传感器的实例,分别是加速度传感器和距离传感器。微信中的摇一摇就是利用加速传感器的作用,而上面我们提到的屏幕熄灭

2016-11-07 13:24:38 3509

原创 Android仿mac音量拖动view实现

前言雨后江岸天破晓,老舟新客知多少;远山见竹林芳草,晨风拂绿了芭蕉。简介今天给大家带来的是自定义view的相关知识,我们实现的是仿mac音量加减的拖动view。我们先来看下效果图。效果图实现下面我们讲一下具体的实现逻辑。自定义styleable<declare-styleable name="VolumeView"> <attr name="ball_color" format="col

2016-11-03 16:25:51 839

原创 Android中沉浸式状态栏详解

前言地上断了翅的蝶,雾散之后的满月,原来爱跟心碎,都可以很细节。简介这两天时间比较充裕,所以实现了项目里的沉浸式状态栏效果,这样可以使得我们的app主题显得更加统一。所以今天就带领大家实现下不同情况下的状态栏效果显示。一 状态栏颜色改变对于状态栏颜色改变的实现,github上有一个开源的项目SystemBarTint可以帮我们很容易实现状态栏颜色的改变,我们直接在项目中添加依赖:dependen

2016-10-31 11:40:19 2883

原创 Android中ValueAnimator的使用

介绍 今天给大家带来的是ValueAnimator的相关用法,下面先给大家看下效果图。 效果图动画介绍 这里我们写了两个位移动画,分别是城市交换动画和日期位移动画,下面我们将通过代码详细介绍下两个动画的具体实现,从而理解valueAnimator的相关使用。城市交换动画 左边城市:startCityTextView 右边城

2016-10-13 14:05:10 4227 4

原创 Android动画之自定义Evaluator实现弹球效果

前言今天给大家带来的是自定义Evaluator实现弹球效果,我们先给大家来个效果图。下面我们介绍具体代码流程自定义Point类public class Point { private int radius; public Point(int radius) { this.radius = radius; } public int getRadius()

2016-09-26 21:44:07 2070

原创 Java中的非对称加密算法

上篇博文中我们讲了Java中的对称加密,还没有看过的童鞋可以打开链接查看对称加密,今天我们重点讲一下Java中的非对称加密。对于非对称加密,它需要两个密钥来进行加密和解密,分别为公钥和私钥,其相对于对称加密而言安全性更高;在Java中的非对称加密算法主要有DH算法和RSA算法。DH算法加密:package com.example.asiatravel.learndes.dh_util;

2016-09-15 20:20:05 957

原创 Java中的对称加密算法

在Java中,对于加密密钥和解密密钥相同的加密我们称之为非对称加密,其中主要有DES,3DES和AES加密。DES加密package com.example.asiatravel.learndes.util;import android.util.Log;import javax.crypto.Cipher;import javax.crypto.KeyGenerator;im

2016-09-14 21:58:19 7511

原创 Android自定义水平和圆形的progressBar

本篇博文是按照http://www.imooc.com/learn/657教程中的学习过程,代码是按照视频中原作者的思路来敲的,虽然只是模仿,但我觉得这是学习自定义view的必经之路,所以还是把我所学到的东西拿出来与大家一起分享。先贴出一张progressBar的gif图,其中有水平的进度条,和圆形的进度条:这里我们的实现的思路是继承的progressBar,然后重新去测量和绘制相关代

2016-09-10 15:19:34 1246

原创 MD5的相关知识

MD5算法是一种消息摘要,用于提供消息的完整性保护。  一  其实就是为了保护文件传输的完整性,比如我们从网上下载的文件,如果其在传输过程中被篡改过的话,则我们所下载下来的文件的md5值和源文件肯定是不一样的。  二  涉及到我们的android项目里的话,就是app在进行版本升级的时候,我们需要计算我们下载文件的md5值与服务器该文件的md5值进行比较,如果一样则代表文件是完整的且没有被

2016-09-06 20:14:23 505

原创 Android真正仿携程首页view实现

一 需求:实现view的点击缩放效果,类似于携程首页。二 需求分析:对于单纯的view的缩放实现还是比较简单的,我们使用单纯的android缩放动画就可以实现。 但是按照携程首页的view来做,里面是有很多细节是我们需要处理的。     1 对于一张图片,当我们按下然后左右滑动时它应该仍然处于缩放状态,直到我们的手指脱离开view的边界才回到初始状态

2016-08-30 23:02:41 4415

原创 Android中Volley架包的使用

Volley架包中的StringRequest,JsonObjectRequest,ImageRequest可以分别进行网址的get,post解析,Json解析,图片解析。首先还是把Volley架包复制到Android Studio中的libs目录下并刷新。activity_main.xml<LinearLayout xmlns:android="http://schemas.and

2015-11-04 08:56:02 1338

原创 Android中ImageLoader的使用

ImageLoader是用来加载多个网络图片的,这次我们实现的是把网络图片加载到ListView中。首先我们把Volley.jar包添加到Android Studio中的libs目录中,然后刷新一下。activity_main中只有一个ListView一、MainActivity:package com.example.administrator.imageloader;imp

2015-11-03 22:46:07 1594

原创 Android中DrawerLayout控件的使用

DrawLayout控件是Google提供的一种实现侧滑效果的控件,使用该控件可以很容易地实现侧滑菜单的效果,因为是系统自带的,所以不需要导入第三方的框架。我们直接看下activity_main.xml文件吧:<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:too

2015-11-03 17:26:39 525

原创 Android中SlidingMenu框架的使用

使用SlidingMenu开源框架可以很方便的实现界面中的侧滑菜单。首先是把SlidingMenu中的library导入Android Studio中,然后就可以使用SlidingMenu控件了。MainActivity:package com.example.administrator.myapplication;import android.support.v7.app.App

2015-11-03 17:10:26 1201

原创 Android中SwipeRefreshLayout的使用

SwipeRefreshLayout是Android自带的实现下拉刷新的控件。下面我们重点看一下SwipeRefreshLayout的使用吧。activity_main.xml文件:<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://s

2015-11-02 20:23:26 10844

原创 图片的三级缓存

三级缓存:强引用---》软引用---》sdCardHashMap map = new HashMap();//存储图片的"数据库"new 出来的内存空间 强引用内存:强引用   软引用     弱引用 虚引用1、强引用:new LruCache垃圾回收机制--》这块空间是无法回收。java当内存不足的时候宁可抛出OutofMemory Error

2015-10-24 10:35:48 725

原创 ViewPager的实现:通过HorizontalScrollView

我们可以发现,在一些新闻客户端的标题栏中,它们会有很多标题,而这些标题都是可以滑动的,这种效果的实现使用的就是HorizontalScrollView,我们通过向HorizontalScrollView包含的LinearLayout中动态添加标题,这样无论我们添加多少标题,它都是可以滑动的。activity_main.xml:<LinearLayout xmlns:androi

2015-10-22 22:26:39 715

原创 ViewPager的实现:动态添加RadioButton

这里我们通过向RadioGroup中动态添加RadioButton给ViewPager添加tag,然后在确定ViewPager的页数,再通过Fragment填充ViewPager。activity_main.xml文件:<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android

2015-10-22 21:37:18 1737

原创 Android自定义View

对于Android中的自定义View,我们可以使用系统的View组件,当然也可以根据需求来自定义我们想要的View。当系统提供的View不能够满足开发的需求,则需要定义一个定制的View *  分类: * 1、完全的自定义View 一般继承View并重写相应的方法绘制View组件 * 2、继承已有的组件:比如继承EditText并扩展其功能, * 3、组合定义View组件:

2015-10-22 20:03:17 662 2

原创 Android中横竖屏的切换

对于Android中横竖屏的切换,当从竖屏切换到横屏时,竖屏的Activity会销毁,会加载横屏时的Activity。下面的实例就是我们在切换横竖屏时让页面加载不同的布局内容。在res文件夹下新建文件夹:layout-land,这里面的布局文件是我们把手机切换到横屏时加载到Activity中的内容。这里我们先写一下竖屏时加载的内容:activity-main.xml文件:<

2015-10-22 19:56:27 980

原创 Android中的drawable下的资源使用

所谓的Level动画就是给图片设置不同的等级,在不同的等级下显示不同的图片,比如说手机电池的电量。实现步骤:一、在res文件夹下创建新的文件夹drawable,在其中新建level.xml文件:这里我们把标签改为level-list,因为新建中没有该项。 <!-- 在level中显示不同的图片,当等级不同的时候,切换或者改变图片 一般用于管理

2015-10-21 13:13:13 639

原创 Android中的样式

Android中可以自定义样式style,在布局文件中可以引用我们自定义的style。在style.xml文件中自定义样式: match_parent 0dp 1 10dp #f00 @drawable/bd_logo1 5dp 在activity_main.xml中引

2015-10-20 22:35:23 473

原创 Android中的属性动画

在Android中除了我们之前提过的帧动画,补间动画,还有一个很重要的动画,就是属性动画。它可以设置控件的渐变过程,可以设置图片的在X轴上的拉伸,在Y轴上的拉伸,以及在X和Y轴上的拉伸实现步骤:①在res文件夹下新建一个文件夹animator(必须是animator)②子animator文件夹中创建不同类型的xml文件③在代码中实现布局的引用一、animator文件夹下的x

2015-10-20 22:29:37 569

原创 Android中补间动画的实现之二

上篇博文中点击打开链接我们在代码中实现了补间动画,那么这篇博文中我们就使用布局文件实现补间动画。实现步骤:①在res文件夹下新建文件夹anim(必须是anim)②在anim文件夹下创建不同效果的布局文件:alpha:淡入淡出rotate:旋转scale:缩放translate:平移set:组合③在代码中引用我们定义的布局文件一、实现不同效果的布局文件:

2015-10-20 22:10:14 453

原创 Android中补间动画的实现

下面要说的是补间动画的实现。补间动画包括五种:1、淡入淡出2、旋转3、平移4、缩放5、组合这些动画效果可以在代码中实现,也可以通过布局文件来实现。下面是我们在代码中的实现:package com.example.text02;import android.os.Bundle;import android.app.Activity;import andro

2015-10-20 21:58:29 689

原创 Android中帧动画的实现

对于Android中动画的实现,Android中的动画主要有帧动画,补间动画,属性动画,层layer。所谓的帧动画就是多张图片进行循环的切换形成的效果。实现步骤:①在res文件夹下新建文件夹drawable②在drawable文件夹下新建xml文件,类型为:animation-list③把我们要切换的图片通过添加item的方式添加到animation-list中④在代码中引

2015-10-20 21:37:16 369

原创 Android服务之信使应用之二

对于信使来说,我们不仅可以实现从客户端向服务端传递数据,而且可以实现服务端和客户端相互传递数据。那么我们是怎样做到的呢?在服务端:①首先我们在服务端创建一个handler对象②通过handler对象创建一个信使对象③在onBind方法中通过信使对象的getBinder()方法返回一个IBinder对象④在清单文件中配置服务的Action在客户端:①首先是通过Inte

2015-10-15 20:53:45 367

原创 Android服务之信使

所谓的信使就是Messenger,它的作用是建立不同应用之间客户端和服务端的连接,并进而实现信息的传递。对于服务端信使的创建:①创建一个Handler对象handler②创建一个信使对象Messenger messenger = new  Messenger(handler);③在onBind方法中通过调用messenger对象的getBinder()方法返回一个IBinder

2015-10-15 20:13:21 391

空空如也

空空如也

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

TA关注的人

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